as3替换所有不敏感

yar*_*rek 4 flash actionscript-3

我有这个as3功能

public static function StringReplaceAll( source:String, find:String, replacement:String ) : String {
      return source.split( find ).join( replacement );
}
Run Code Online (Sandbox Code Playgroud)

工作正常:任何想法如何让它不区分大小写?问候

RIA*_*tar 19

只需使用String#replace()函数.

例如:

trace("HELLO there".replace(/e/gi, "a"));
//traces HaLLO thara
Run Code Online (Sandbox Code Playgroud)

replace函数中的第一个参数是正则表达式.您可以在整个网络上找到有关它们的信息.还有Grant Skinner提供的一个名为Regexr的方便工具,您可以使用它来测试正则表达式ActionScript风格.

两个正斜杠(/)之间的部分是实际的正则表达式.

  • 正则表达式后面的' g '表示"全局替换"(即示例中所有出现的字母'e',没有'g',它只会替换第一次出现).
  • ' i '的意思是"做一个不区分大小写的搜索"(在这个例子中,没有'i'的资本E不会被替换).

请注意,这/e/gi实际上只是一个简写new RegExp("e", "gi")