C# 正则表达式与数字不匹配
我有以下正则表达式:(\d{14})与14个字符长的数字匹配的十进制数。问题是它还匹配16个字符长的数字。如果字符串的开头或结尾没有数字,我需要添加一个条件来匹配C# 正则表达式与数字不匹配,c#,regex,C#,Regex,我有以下正则表达式:(\d{14})与14个字符长的数字匹配的十进制数。问题是它还匹配16个字符长的数字。如果字符串的开头或结尾没有数字,我需要添加一个条件来匹配 例如,11222233不是我想要的匹配,但是XX222XX是我需要的匹配 使用单词边界\b \b\d{14}\b 使用单词边界\b \b\d{14}\b M42的答案适用于数字由空格或其他单词分隔符分隔的情况。但是,如果您想匹配包含非数字的单词中的数字(如您的示例xx222xxx),类似的方法应该可以: (^|[^\d])\d{1
例如,11222233不是我想要的匹配,但是XX222XX是我需要的匹配 使用单词边界
\b
\b\d{14}\b
使用单词边界
\b
\b\d{14}\b
M42的答案适用于数字由空格或其他单词分隔符分隔的情况。但是,如果您想匹配包含非数字的单词中的数字(如您的示例
xx222xxx
),类似的方法应该可以:
(^|[^\d])\d{14}([^\d]|$)
M42的答案适用于数字由空格或其他单词分隔符分隔的情况。但是,如果您想匹配包含非数字的单词中的数字(如您的示例
xx222xxx
),类似的方法应该可以:
(^|[^\d])\d{14}([^\d]|$)
^\d{14}$
似乎有效“x0xx0000111222234xx”
?:)^\d{14}$
似乎起作用了“x0xx0000111222234xx”
?:)