JavaScript正则表达式。替换用法
我试图使用正则表达式来显示HTML代码中的“所需字符串”,有人能看出我的错误吗JavaScript正则表达式。替换用法,javascript,expression,Javascript,Expression,我试图使用正则表达式来显示HTML代码中的“所需字符串”,有人能看出我的错误吗 alert("< TD>< B>< B>13COB251< /B> - Desired String< /B>< /TD>".replace(/(<[A-Z]*>)+13COB251(<\/[A-Z]*>)+ - ([a-z]*)(<\/[A-Z]*>)+/gi, "$3")) 警报(“13COB251-所需
alert("< TD>< B>< B>13COB251< /B> - Desired String< /B>< /TD>".replace(/(<[A-Z]*>)+13COB251(<\/[A-Z]*>)+ - ([a-z]*)(<\/[A-Z]*>)+/gi, "$3"))
警报(“13COB251-所需字符串 ”。替换(/()+13COB251()+-([a-z]*)()+/gi,$3”))
谢谢 如果通过Regexper输入当前代码,将出现以下错误:
alert("< TD>< B>< B>13COB251< /B> - Desired String< /B>< /TD>".replace(/(<[A-Z]*>)+13COB251(<\/[A-Z]*>)+ - ([a-z]*)(<\/[A-Z]*>)+/gi, "$3"))
在/()+13COB251之后的第1行第22列(字节22)处应为*、+、?、{、(、[、\、$、|、)中的一个(您需要对模式中的
/
字符进行转义,因为这是分隔符
alert("< TD>< B>< B>13COB251< /B> - Desired String< /B>< /TD>".replace(/(<[A-Z]*>)+13COB251(<\/[A-Z]*>)+ - ([a-z]*)(<\/[A-Z]*>)+/gi, "$3"))
然后您需要更多的量词。模式()+
匹配一个或多个HTML标记,但仅匹配具有单个字符标记名的标记。您还需要()+
匹配
标记
alert("< TD>< B>< B>13COB251< /B> - Desired String< /B>< /TD>".replace(/(<[A-Z]*>)+13COB251(<\/[A-Z]*>)+ - ([a-z]*)(<\/[A-Z]*>)+/gi, "$3"))
所需字符串的模式还需要一个量词,集合需要匹配更多字符,因为所需字符串不包含小写字符
alert("< TD>< B>< B>13COB251< /B> - Desired String< /B>< /TD>".replace(/(<[A-Z]*>)+13COB251(<\/[A-Z]*>)+ - ([a-z]*)(<\/[A-Z]*>)+/gi, "$3"))
alert("<TD><B><B>13COB251</B> - Desired String</B></TD>".replace(/(<[A-Z]+>)+13COB251(<\/[A-Z]>) - ([A-Za-z ]+)(<\/[A-Z]+>)+/gi, "$3"))
alert(“13COB251-所需字符串”。替换(/()+13COB251()-([A-Za-z]+)()+/gi,“$3”))
演示:您忘记说明标记和所需字符串中的空格
alert("< TD>< B>< B>13COB251< /B> - Desired String< /B>< /TD>".replace(/(<[A-Z]*>)+13COB251(<\/[A-Z]*>)+ - ([a-z]*)(<\/[A-Z]*>)+/gi, "$3"))
/(< *[A-Z]*>)+13COB251(< *\/[A-Z]*>)+ - ([a-z ]*)(< *\/[A-Z]*>)+/gi
^ ^ ^ ^
/(<*[A-Z]*>)+13COB251(<*\/[A-Z]*>)+-([A-Z]*)(<*\/[A-Z]*>)+//gi
^ ^ ^ ^
wiki格式化程序已经吃掉了“\”这个字。