編寫一個正則表達式模式,將英語句子的第一個單詞放入寄存器中。還要注意標點符號。編寫正則表達式,將英語句子的第一個單詞放在寄存器中
這裏是我的嘗試:
[\.]\s*[A-Z] \1
我似乎並沒有收到此權利。我錯過了什麼?
編寫一個正則表達式模式,將英語句子的第一個單詞放入寄存器中。還要注意標點符號。編寫正則表達式,將英語句子的第一個單詞放在寄存器中
這裏是我的嘗試:
[\.]\s*[A-Z] \1
我似乎並沒有收到此權利。我錯過了什麼?
描述的模式接近我可能使用的模式。它包含一些假設和錯誤,但它是正確的。
[.]\s*[A-Z] \1
此模式匹配任何字符,後跟0或更多空格,後跟大寫字母。我假設的\ 1是爲了輸出第一個捕獲組,但你沒有指定任何捕獲組。你會想用圓括號來做。
句點(。)是正則表達式中的一個特殊字符,所以如果你想匹配句末的句點,你需要尋找一個轉義期\.
。這假定所有的句子都以句點結束,但情況可能並非如此。我可能會嘗試一套較爲完整的句子終止的
[\.!\?]["']?\s+([A-Z][a-z]*)
這種模式匹配任何時期,感嘆號或問號,後面可以跟單或雙引號,後跟一個或多個空格,大寫字母和零個或多個小寫字母的序列。它捕獲最後一部分,即大寫字母的大寫字母,直到最後一個小寫字母。
此模式捕捉除第一句話的第一個單詞之外的所有內容,該單詞不遵循任何標點符號。我可能會使用一個單獨的模式。
^\s*([A-Z][a-z]*)
此模式僅在文本的開頭匹配,其中有零個或多個空格,後跟大寫字。它捕獲大寫的單詞。
在方括號中使用的時段只是一段時間。它不需要被轉義。同問號。 –
你的問題有點不清楚。你是否要求與英語句子中的第一個單詞匹配的正則表達式模式?你是說你想讓它與羅馬字符中的第一個單詞相匹配嗎? –
「註冊」是什麼意思?另外,你如何定義「單詞」? – melpomene