如何 return 匹配正则表达式的 javascript 字符串的一部分?
How to return part of javascript string that matches regex?
我有一个正则表达式字符串,它与我需要的字符串的特定部分相匹配 here。
/[^\/,\s\?#]+?\.[^\/,\s]+?(?=\/|\s|$|\?|#)/g
我想在 javascript 中使用这个正则表达式来去除字符串中与正则表达式不匹配的部分,然后将结果存储在一个变量中。我似乎找不到任何方法来做到这一点!
我在 JS 中发现的唯一正则表达式函数是 compile()、exec()、test() 和 toString()。 None 这些似乎符合我的需要。我该怎么做?
谢谢
使用string.match
函数将return所有匹配的字符作为数组元素。
string.match(/[^\/,\s\?#]+?\.[^\/,\s]+?(?=\/|\s|$|\?|#)/g)
如果要删除匹配的部分,请使用 string.replace
var s = string.replace(/[^\/,\s\?#]+?\.[^\/,\s]+?(?=\/|\s|$|\?|#)/g, "")
执行此操作的方法是使用 string.match()
函数,如 Mozilla Developer Page.
中所示
所以,你的函数调用看起来像
string.match(/[^\/,\s\?#]+?\.[^\/,\s]+?(?=\/|\s|$|\?|#)/g)
如果您打算去除任何不匹配的内容,那么您可以使用
string.replace(/[^\/,\s\?#]+?\.[^\/,\s]+?(?=\/|\s|$|\?|#)/g, '')
,如图here,然后存入另一个变量。
我有一个正则表达式字符串,它与我需要的字符串的特定部分相匹配 here。
/[^\/,\s\?#]+?\.[^\/,\s]+?(?=\/|\s|$|\?|#)/g
我想在 javascript 中使用这个正则表达式来去除字符串中与正则表达式不匹配的部分,然后将结果存储在一个变量中。我似乎找不到任何方法来做到这一点!
我在 JS 中发现的唯一正则表达式函数是 compile()、exec()、test() 和 toString()。 None 这些似乎符合我的需要。我该怎么做?
谢谢
使用string.match
函数将return所有匹配的字符作为数组元素。
string.match(/[^\/,\s\?#]+?\.[^\/,\s]+?(?=\/|\s|$|\?|#)/g)
如果要删除匹配的部分,请使用 string.replace
var s = string.replace(/[^\/,\s\?#]+?\.[^\/,\s]+?(?=\/|\s|$|\?|#)/g, "")
执行此操作的方法是使用 string.match()
函数,如 Mozilla Developer Page.
所以,你的函数调用看起来像
string.match(/[^\/,\s\?#]+?\.[^\/,\s]+?(?=\/|\s|$|\?|#)/g)
如果您打算去除任何不匹配的内容,那么您可以使用
string.replace(/[^\/,\s\?#]+?\.[^\/,\s]+?(?=\/|\s|$|\?|#)/g, '')
,如图here,然后存入另一个变量。