如何解决如何测试字符串是否在perl中只是空白
| 用正则表达式测试字符串是否只有空白字符的好方法是什么?解决方法
if($string=~/^\\s*$/){
#is 100% whitespace (remember 100% of the empty string is also whitespace)
#use /^\\s+$/ if you want to exclude the empty string
}
,(我决定编辑我的文章,以在下面与tobyodavies的对话中包含概念。)
在大多数情况下,您要确定某个东西是否为空格,因为空格相对无关紧要,并且您想跳过仅由空格组成的字符串。因此,我认为您要确定的是是否有重要字符。
所以我倾向于使用反向检验::1ѭ。确定谓词“字符串包含一个有效字符”。
但是,要应用您的特定问题,可以通过测试否定确定它:$str !~ /\\S/
,您的正则表达式语句应查找^ \\ s + $。它将至少需要一个空格。
如果您想知道,\“空白定义为[\\ t \\ n \\ f \\ r \\ p {Z}] \”。请参阅http://userguide.icu-project.org/strings/regexp。
\\t Match a HORIZONTAL TABULATION,\\u0009.
\\n Match a LINE FEED,\\u000A.
\\f Match a FORM FEED,\\u000C.
\\r Match a CARRIAGE RETURN,\\u000D.
\\p{UNICODE PROPERTY NAME} Match any character with the specified Unicode Property.
,如果要检查给定的String
是否在正则表达式中仅包含空格字符…
String given_string=\" \\t \"; //add spaces and tabs any white space character
System.out.println(given_string.matches(\"^\\\\s+$\"));
它将检查从字符串开头到结尾的至少一个空格字符,如果出现任何非空格字符,它将返回false。它适用于NULL情况和换行情况(^ _ ^ )
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。