如何解决正则表达式匹配一个或多个反斜杠和+符号
| 我正在写一个正则表达式以匹配一个或多个\\
和一个或多个+
符号。
这是我到目前为止所拥有的,看起来不正确
/\\\\+\\++/
my $test = \"\\+\";
if( $test =~ /\\\\+\\++/)
{
print \"yes\";
}
香港专业教育学院尝试此代码,它不起作用
解决方法
尽管整个字符串应仅由\\&+字符组成,但您可能希望添加锚点,所以您的表达式没问题。
/^\\\\+\\++$/g
您可以在http://refiddle.com/18e上看到一个测试和示例
,在我看来很好:
perl -Dr -e \'\"\\\\+++\" =~ /\\\\+\\++/\'
Compiling REx \"\\\\+\\++\"
rarest char + at 1
rarest char \\ at 0
Final program:
1: PLUS (4)
2: EXACT <\\\\> (0)
4: PLUS (7)
5: EXACT <+> (0)
7: END (0)
anchored \"\\\" at 0 floating \"\\+\" at 0..2147483647 (checking floating) plus minlen 2
Omitting $` $& $\' support.
EXECUTING...
Guessing start of match in sv for REx \"\\\\+\\++\" against \"\\+++\"
Found floating substr \"\\+\" at offset 0...
Found anchored substr \"\\\" at offset 0...
Guessed: match at offset 0
Matching REx \"\\\\+\\++\" against \"\\+++\"
0 <> <\\+++> | 1:PLUS(4)
EXACT <\\\\> can match 1 times out of 2147483647...
1 <\\> <+++> | 4: PLUS(7)
EXACT <+> can match 3 times out of 2147483647...
4 <\\+++> <> | 7: END(0)
Match successful!
Freeing REx: \"\\\\+\\++\"
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。