Regex 正则表达式-仅以此字母开头
我正在编写一个正则表达式,它应该以Regex 正则表达式-仅以此字母开头,regex,Regex,我正在编写一个正则表达式,它应该以EM和下划线开始任意位数 下面是我所拥有的:需要帮助更正正则表达式: “^[em-em]{2}{0-9]” 不要像那样使用- "^(em|EM)_\d*" 不要像那样使用- "^(em|EM)_\d*" 如果情况不重要: "^[eE][mM]_[0-9]*$" 如果情况不重要: "^[eE][mM]_[0-9]*$" 您可以使用(?i)(?-i),因此不需要在字符串上指定敏感大小写: "^(?i)em(?-i)\x5F\d*$" 您可以使用(?i)(?
EM
和下划线开始
任意位数
下面是我所拥有的:需要帮助更正正则表达式:
“^[em-em]{2}{0-9]”
不要像那样使用-
"^(em|EM)_\d*"
不要像那样使用-
"^(em|EM)_\d*"
如果情况不重要:
"^[eE][mM]_[0-9]*$"
如果情况不重要:
"^[eE][mM]_[0-9]*$"
您可以使用(?i)(?-i)
,因此不需要在字符串上指定敏感大小写:
"^(?i)em(?-i)\x5F\d*$"
您可以使用(?i)(?-i)
,因此不需要在字符串上指定敏感大小写:
"^(?i)em(?-i)\x5F\d*$"
直接解决方案(针对.Net)是:
(?i)^EM_\d*$
细分:
(?i) # case insensitive mode
^ # beginning of line (you've got that right)
EM # characters "em"
_ # underscore
\d* # zero or more digits
$ # end of line
直接解决方案(针对.Net)是:
(?i)^EM_\d*$
细分:
(?i) # case insensitive mode
^ # beginning of line (you've got that right)
EM # characters "em"
_ # underscore
\d* # zero or more digits
$ # end of line
当然,但不需要将大小写敏感度限制为字母,因为表达式的其余部分是无大小写的…@CodeJockey right,不需要。但我仍然认为这是一个很好的实践。当然,但是你不需要限制对字母的大小写敏感度,因为其余的表达式都是无字形的。但我仍然认为这是一个很好的做法。