Php 匹配除换行符、空格和制表符以外的所有内容
我想匹配除换行符、空格和制表符以外的所有内容。我知道有Php 匹配除换行符、空格和制表符以外的所有内容,php,regex,regex-negation,Php,Regex,Regex Negation,我想匹配除换行符、空格和制表符以外的所有内容。我知道有\S,但它说不要在char类中使用它,那么我怎么能说除了\S,我什么都想要呢?我要检查的是,我拥有的字符串至少有任何可见字符 Test 1234 --> should be found ____ (spaces) --> should not be found 字符类是这样的:[]事物及其所有内容,根据,因此在方括号之外,这应该匹配得很好,并且完全符合您的要求。\S就足够了,它可以匹配除空格以外的任何内容 preg_
\S
,但它说不要在char类中使用它,那么我怎么能说除了\S
,我什么都想要呢?我要检查的是,我拥有的字符串至少有任何可见字符
Test 1234 --> should be found
____ (spaces) --> should not be found
字符类是这样的:
[]
事物及其所有内容,根据,因此在方括号之外,这应该匹配得很好,并且完全符合您的要求。\S
就足够了,它可以匹配除空格以外的任何内容
preg_match('/\S/', $subject);
“test1234”包含一个空格。“\S+”不会全部匹配,但如果运行多个匹配,则可以同时匹配两个单词。您的意思是要确保字符串不完全由空格组成吗?对,在我的情况下,足以查看是否至少找到了一些内容…我一开始没有看到,谢谢。嗯。。。在其作为
preg_匹配('/\\S/',$subject)工作的地方进行测试
@EugeneRyabtsev/\S/
很好,您的链接没有提供任何信息。这很有趣。如果我运行echo preg_match(“/\S/”,“S”);回声预匹配('/\S/',1“);回声预匹配('/\\S/',“1”)代码>输出“101”。我想知道为什么不同。。。
preg_match_all('/([^\n\s]+)/', $str, $m);
print_r($m);