以下正则表达式:
id="special"
目标输入字符串中的每个[TEXT]和[INPUT],除了脚本标记中的任何[]。
我现在想要更改此内容,将异常放在具有<script id="special">[INPUT]</script>
的特定脚本上。
所以<script>[INPUT]</script>
不应该被定位,而另一个没有id特殊的脚本标签,如id="special"
应该与字符串的其余部分一起使用。
我尝试在[^>]*>
之前将Aggregate
添加到上述正则表达式中,但不起作用。
答案 0 :(得分:0)
你可能会对此感到复杂。
如果您不想匹配具有任何属性的<script>
元素,则可以使用\ s作为空格:
<\s*script\s*>\[(.*?)\]</\s*script\s*>
如果您需要省略的唯一属性是&#39; id&#39;你可以用一个 负向前瞻/后视:
<script(?!.*\sid=).*>\[(.*?)\]</script>
这将匹配<script
字符前<whitespace>id=
之前没有>
匹配的Car.prototype.main = function() {
var angle = angleBetweenTwoPoints(this.target.position, this.position);
var cos = Math.cos(degreeToRadian(angle)) * -1;
var sin = Math.sin(degreeToRadian(angle));
var _this = _super.call(this) || this;
this.angle = angle;
this.position.x += cos * this.speed;
this.position.y -= sin * this.speed;
if (distance(this.position, this.target.position) < 10 && this.image == GameImage.getImage("hero") ) {
this.target.position.x = Math.random() * mainCanvas.width;
this.target.position.y = Math.random() * mainCanvas.height;
this.hitCount++;
console.log(hitCount);
ctx.fillText("points : " + hitCount, 32, 32);
this.changeImage = true;
_this.speed = 3;
this.changeImageTime = Date.now() + 600; //0.5 sec from now.
this.image = (this.image == GameImage.getImage("hero"))? GameImage.getImage("hero_other") : GameImage.getImage("hero");
}
if(this.changeImage){
if(Date.now() > this.changeImageTime){
this.changeImage = false;
_this.speed = 9;
this.image = (this.image == GameImage.getImage("hero_other"))? GameImage.getImage("hero") : GameImage.getImage("hero_other");
}
}
};
return Car;
}(Actor));
。
更多帮助请访问此Link
答案 1 :(得分:0)
您可以使用PCRE动词script
和skip
跳过具有该ID的fail
元素内的所有内容。
<script id="special">.*?<\/script>(*SKIP)(*FAIL)|\[[^\]]+?\]
演示:https://regex101.com/r/PSMV15/5/
您可以在此处详细了解http://www.rexegg.com/backtracking-control-verbs.html#skipfail。
如果字符串是HTML,则应使用解析器,因为元素和属性中可能存在各种变体。
例如:
<script id="special">
<script src="page" id="special">
<script src="page" id="special" class="why?">
<script id='special'>
<script id=special>
<script id=special src=page>
甚至没有输入分层元素问题。这里有一个关于为什么正则表达式和HTML不应该在一起的线程。 RegEx match open tags except XHTML self-contained tags