Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在coldfusion中查找字符串之间的空白_Coldfusion_Coldfusion 9_Coldfusion 10 - Fatal编程技术网

如何在coldfusion中查找字符串之间的空白

如何在coldfusion中查找字符串之间的空白,coldfusion,coldfusion-9,coldfusion-10,Coldfusion,Coldfusion 9,Coldfusion 10,我需要在ColdFusion中查找字符串之间的空白 比如说 str="ha ppy" 空格=4 我需要计算str之间有多少空格 如何做到这一点。一个简单的正则表达式: <cfset str="ha ppy"> <cfset spaces = reReplace(str, "\S+(\s+)\S+", "\1")> <cfoutput> <pre>spaces = [#spaces#]</pre><br&g

我需要在ColdFusion中查找字符串之间的空白
比如说

str="ha    ppy"
空格=4

我需要计算str之间有多少空格

如何做到这一点。

一个简单的正则表达式:

<cfset str="ha    ppy">

<cfset spaces = reReplace(str, "\S+(\s+)\S+", "\1")>

<cfoutput>
    <pre>spaces = [#spaces#]</pre><br>
    #len(spaces)#
</cfoutput>

空格=[#空格]
#len(空间)#
您只需要空格-仅需要chr(32)-还是空白(inc制表符、换行符、回车符)。好的,让我重新表述一下:您想要
[]
还是
[\n\r\t\v]
(即
\s
)还是其他什么?这只适用于小写字母-应该是
[^]+
来排除空格(或
\S
\S
表示空格)。如果只是空格,则更简单的解决方案是
ListLen(str',,true)
@PeterBoughton fair point about use\s\s…您的listLen解决方案不起作用,在本例中错误地返回len=5。如果空格是分隔符,有4个分隔符,则列表有5个元素(当然,您可以总是减去1,但您的代码会变得有点混乱)Doh,是的,这意味着在末尾有一个
-1
。它并不是真的更混乱,而且仅仅对于空格来说,它可能比正则表达式更有效。仍然不清楚OP只需要空格还是空白,但是你得到的
[\s]+
应该是
\s+