这是我的string = data-dateformat =“dd-MMM-YYYY”class =“info th-header-bc-ascolor”> 22-02-2017
请注意,dd-MMM-YYYY可以是任何日期格式.
我想要的是删除data-dateformat =“dd-MMM-YYYY”和>之间的所有内容.
这是我最好的尝试,但我知道它不起作用.
mystring.substring(mystring.indexOf(‘data-dateformat =“*”’),htmlcontent.indexOf(‘>’));
我怎么解决这个问题?
解决方法
to remove every thing between data-dateformat=”dd-MMM-YYYY” and >
您可以使用String.prototype.replace()函数和特定的正则表达式模式尝试以下方法:
var str = 'data-dateformat="dd-MMM-YYYY" class="info th-header-bc-ascolor">22-02-2017',new_str = str.replace(/(data-dateformat="[^"]+")[^>]+>/,'$1>'); console.log(new_str);
[^“] – 将匹配除”,即data-dateformat属性值(双引号之间)之外的任何字符
[^>] – 将匹配除>之外的任何字符
$1 – 指向第一个捕获的组(data-dateformat =“[^”]“)