簡體   English   中英

正則表達式匹配可選的“+”符號后跟任意數量的數字

[英]Regex to match an optional '+' symbol followed by any number of digits

我想要一個正則表達式來匹配一個字符串,該字符串可能以也可能不以加號開頭,然后包含任意數量的數字。

那些應該匹配

  +35423452354554
  or
  3423564564

這應該工作

\+?\d+

匹配行首的可選+及其后的數字

編輯:

根據 OP 的澄清要求:3423kk55 匹配,因為它是第一部分(3423)。 要匹配整個字符串,請改用它:

^\+?\d+$

它看起來像這樣:

\+?\d+

\\+表示文字加號, ? 表示前一組(加號)可以出現0次或1次, \\d表示一個數字字符,最后的+要求前一組(數字)出現一次或多次。

編輯:使用正則表達式時,請記住查找匹配之間存在差異(至少在 Java 中,盡管大多數正則表達式實現具有類似的方法)。 find將在擁有的字符串中的某處找到子字符串,並且匹配將嘗試將整個字符串與模式匹配,如果之前或之后有額外的字符,則失敗。 確保您使用了正確的方法,並記住您可以添加^以強制行首,並添加$以強制行尾(使整個內容看起來像^\\+?\\d+$

簡單的^\\+?\\d+$

起始行,然后是 1 或 0 加號,后跟至少 1 位數字,最后是 lnie

Perl 正則表達式可以是: \\+?\\d+

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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