gpt4 book ai didi

regex - 如何检测perl字符串中的某些特殊字符?

转载 作者:行者123 更新时间:2023-12-02 20:47:47 25 4
gpt4 key购买 nike

我想检测 Perl 字符串中是否存在某些字符,例如 @ # $ %\/。任何人都可以为此建议一个正则表达式。我尝试了一些,但没有成功。

=~ /(\W@\W#\W%\W*)/)
=~ /(@|#|%|*)/)

我尝试了这些,但不起作用。

有人可以建议我哪里出错了吗?

最佳答案

您的第二次尝试是正确的,但您忘记转义在正则表达式模式中具有特殊含义的字符。

/\@|#|\$|%|\\|\//       # or m{\@|#|\$|%|\\|/}

但是,使用字符类会更有效。

/[\@#\$%\\//]/          # or m{[\@#\$%\\/]}

如果您可以检查任何非单词字符,则可以使用

/\W/

更安全的方法通常是指定您想要允许的字符,并排除其他所有字符。例如,

/[^\w]/           # Only allow word characters.

/[^a-zA-Z0-9_]/   # Only allow unaccented latin letters, "european" digits, and underscore.

关于regex - 如何检测perl字符串中的某些特殊字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43585138/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com