簡體   English   中英

正則表達式匹配所有首字母縮略詞

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM