我一直在尋找解決方案并嘗試了一些示例,但找不到我要找的東西。(我正在使用 javascript)
基本上,如果第一個字符不是@,它應該只匹配 18 位數字的字串,它應該只包含 18 位數字。
所以類似/[^@]\d{18}/g但如果我這樣做,它包括第一個不是@
示例:test 123456789012345678 abc匹配123456789012345678
test @123456789012345678 abc 不匹配。
uj5u.com熱心網友回復:
一種選擇是匹配一個@ 和一個您不想要的數字,然后\b在您想要保留的捕獲組 1 中捕獲單詞邊界之間的 18 個數字。
單詞邊界是為了防止數字部分匹配。
@\d|\b(\d{18})\b
正則運算式演示
如果支持,您還可以使用否定回顧:
\b(?<!@)\d{18}\b
正則運算式演示
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/399397.html
標籤:javascript 正则表达式
上一篇:正則運算式:在最靠近另一個模式左側的模式之間獲取文本
下一篇:過濾URL與其他帶點的文本
