Aanval op Vlemis(499 | 453)C44
这就是字符串的样子。虽然它实际上是这样的:“Aanval op变量(变量)变量
我想要做的是1:获取坐标(我已经有了这个),2得到Vlemis(第一个变量),得到C44(第三个变量)并检查字符串是否属于这种类型。
我的代码:
$("#commands_table tr.nowrap").each(function(){
var text = $(this).find("input[id*='editInput']").val();
var attackername= text.match(/(?=op)[\s|\w]*(?=\()/);
var coordinates = text.match(/\(\d{1,3}\|\d{1,3}\)/);
});
坐标工作,然而攻击者没有。
Html:
<span id="labelText[6]">Aanval op Vlemis (499|453) C44</span>
答案 0 :(得分:2)
您应该使用一个正则表达式来获取所有内容:
var parts = text.match(/(\w+)\s*\((\d+)\|(\d+)\)\s*(\w+)/).slice(1);
这构建
["Vlemis", "499", "453", "C44"]
如果您不确定该字符串是否有效,请按以下方式进行测试:
var parts = text.match(/(\w+)\s*\((\d+)\|(\d+)\)\s*(\w+)/);
if (parts) {
parts = parts.slice(1);
// do things with parts
} else {
// no match, yell at the user
}