String.scan - Prototype JavaScript 框架

Xunxin Prototype API

scan

scan(pattern, iterator) -> string

该方法允许遍历字符串中与参数 pattern 指定的模式(可以是一个字符串或是一个正则表达式) 匹配的所有子串。返回原始字符串本身。

该方法只是简单的将参数 patterniterator 传递给 String#gsub 方法,并调用它。

样例

'apple, pear & orange'.scan(/\w+/, alert); 
// -> 'apple pear orange'(并连续弹出对话框显示 'apple'、'pear' 和 'orange')

可以用来填充一个数组:

var fruits = []; 
'apple, pear & orange'.scan(/\w+/, function(match){
	fruits.push(match[0])
}); 
fruits.inspect() 
// -> ['apple', 'pear', 'orange'] 

甚至可用于 DOM

'failure-message, success-message & spinner'.scan(/(\w|-)+/, Element.toggle) 
// -> 'failure-message, success-message & spinner'(并切换每个元素的可见性)

注意

不要 在正则表达式中使用标识 "g",这会导致一个无限循环。