我有如下输入值:
<input type="text" value: "Part: PT001 Invoice: 1234" />
我需要的是我想从输入值中单独获取部件号“PT001”..
注意:PT001动态获得价值......
欣赏你的想法......
答案 0 :(得分:2)
使用String#match
方法和正则表达式/\bPart:\s?(\S+)/
并获取捕获组值。
console.log(
$('input').val().match(/\bPart:\s?(\S+)/)[1]
)
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" value="Part: PT001 Invoice: 1234" />
&#13;
答案 1 :(得分:1)
假设所有情况下字符串模式保持不变 -
在文本框中添加id
<input type="text" id="myTb" value="Part: PT001 Invoice: 1234" />
然后使用jQuery :(长版本为了简单起见)
var full_string = $('#myTb').val();
var explode = full_string.split(':'); // split the string based on :
// explode[0] will contain "Part"
// explode[1] will contain " PT001 Invoice"
// explode[3] will contain " 1234"
var part_explode = explode[1].split(" "); // split by blank space
// similarly, part_explode[0] will be blank space
// part_explode[1] will contain "PT001"
// part_explode[2] will contain "Invoice"
console.log(part_explode[1]); // should be PT001
答案 2 :(得分:0)
如果PT一致,则使用:
$('input').val().match(/PT\d+/);
它将返回PT和1位或更多位数。即PT100