[英]Regex to match all acronyms
我正在尋找一個正則表達式來匹配像 NASA 這樣的首字母縮寫詞,但也有沒有終點的 NASA。 此解決方案RegEx 匹配首字母縮略詞有效,但僅適用於以 '.' 結尾的首字母縮略詞。
有什么想法可以匹配 'NASA' 和 'NASA' 嗎?
\\b(?:[a-zA-Z]\\.){2,}
解決方案將非捕獲組內的模式重復 2 次或更多次。 你需要確保.
最后不需要:
\b[a-zA-Z](?:\.[a-zA-Z])+\b
也匹配.
在最后一個字母后添加\\.?
:
\b[a-zA-Z](?:\.[a-zA-Z])+\b\.?
查看正則表達式演示
注意要僅匹配大寫字母,請刪除az
。
模式匹配
\\b
- 前導詞邊界[a-zA-Z]
- 1 個 ASCII 字母(?:\\.[a-zA-Z])+
- 1 次或更多(因此,至少需要 2 個字母)重復
\\.
- 一個點[a-zA-Z]
- 1 個 ASCII 字母\\b
- 尾隨詞邊界\\.?
- 1 或 0 .
字符。 PS :要啟用任何 Unicode 字母支持,請將[a-zA-Z]
替換為\\p{L}
並將[AZ]
替換為\\p{Lu}
。
沒關系;) 我是這樣做的: \\b([a-z0-9]\\.){1,}[a-z0-9]?\\b
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.