[英]Regex how can i get only exact part in a string
我應該只捕捉符合規則的數字。 規則:
我是這樣做的;
([0-9]{11}[0]{3}[0-9]{2})
號碼示例:1234567890100012
現在我想得到這個數字,即使它有任何字母開頭或結尾的字符串,比如“abc1234567890100012abc”,我的 output 應該只是像“1234567890100012”這樣的數字當我添加 [a-zA-Z]* 時,它會給出所有字符串。
還有一點是字符串的開頭或結尾是否有任何數字,例如“999912345678901000129999”。 程序不應該采取這個。 我的意思是它應該什么也不返回。 我怎么能用正則表達式寫這個。
您可以使用捕獲組,並在組之前和之后匹配可選字符 a-zA-Z。
為了防止部分匹配,您可以使用單詞邊界\b
或者如果字符串應該從行的開頭和結尾匹配,您可以使用錨^
和$
\b[a-zA-Z]*([0-9]{11}000[0-9]{2})[a-zA-Z]*\b
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.