無法找出正則表達式問題。限制數字字符的正則表達式是什麼?
我們正在尋找2個數字,然後連字符或空格然後6個數字。必須只有6個數字,因此,無論是字母字符還是某些標點符號或空格都必須遵循6個數字或6個數字必須位於字符串的末尾。
其他數字字符串中的其他地方允許的,只要它們是獨立的。
那麼,這些應該符合:
foo 12-123456 bar
12-123456 bar
foo 12-123456
foo12-123456bar
12-123456bar
foo12-123456
12-123456bar 99
foo12-123456 99
這些不應該匹配:
123-12345 bar
foo 12-1234567
123-12345bar
foo12-1234567
下面是我們使用的是:
\D\d{2}[-|/\ ]\d{6}\D
和Expresso這是罰款。
但在我們的.NET應用程序運行真正的這個模式是不能匹配的例子,其中的6個數字是在字符串的結尾。
嘗試這樣做:
\D\d{2}[-|/\ ]\d{6}[\D|$]
,它仍然不匹配
foo 12-123456
嘗試'\ b \ d {2} [ - |/\] \ d {6} \ b' –
@EugeneRyabtsev否這隻能找到「行尾」或空格。我們所說的任何非數字字符都定義了2/6數字的開始和結尾,包括行尾,字母,標點符號 – hawbsl