Pak*_*pus 5 javascript string null substring match
我有一个变量持有单行字符串,这是像这样的html元素.
var des = "<p> --Sometext before-- FI: This is fi name, This is fi manufacturer <br /> SE:This is se name, This is se manufacturer <br /> EN: This is en name, This is en manufacturer</p>";
Run Code Online (Sandbox Code Playgroud)
我想在FI之后选择所有内容:直到逗号签到一个变量并在逗号后签名,直到
标记为另一个变量.也适用于SE:和EN:也是.
例如,结果将是这样的.
var fi_name = "This is fi name";
var fi_manufacturer = "This is fi manufacturer";
var se_name = "This is se name";
var se_manufacturer = "This is se manufacturer";
var en_name = "This is en name";
var en_manufacturer = "This is en manufacturer";
Run Code Online (Sandbox Code Playgroud)
请注意,字符串会动态更改但仍具有相同的模式.
例如:
<p> --Sometext before-- FI:[name],[manufacturer]<br/ >SE:[name],[manufacturer]<br/ >FI:[name],[manufacturer]</p>
Run Code Online (Sandbox Code Playgroud)
您可以在JsFiddle中查看演示.
现在它抛出了null错误.
编辑vvv
它不适用于实时网站.des变量完全如下所示.请参阅http://jsfiddle.net/AM8X2/它再次抛出null.
我将你的 jsFiddle 更改为:
\n\nhttp://jsfiddle.net/11684/raPDd/4/
\n\n我在正则表达式中添加了大写字母、空格和逗号,因此它不会返回 null(因为找不到匹配项),其余的都很好。
\n结果:
var fi,se,en;\nvar des = "<p>FI: This is fi name, This is fi manufacturer <br /> SE:This is se name, This is se manufacturer <br /> EN: This is en name, This is en manufacturer</p>";\n\nvar match = des.match(/<p>FI:([a-zA-Z ,]+)<br \\/> SE:([a-zA-Z ,]+)<br \\/> EN:([a-zA-Z ,]+)<\\/p>/);\nfi = match[1];\nse = match[2];\nen = match[3];\n\nalert("[FI]: " + fi + "\\n[SE]:" + se + "\\n[EN]:" + en);\xe2\x80\x8b\nRun Code Online (Sandbox Code Playgroud)\n\n编辑:
\n我没有看到您需要在单独的变量中提供名称和制造商,我将小提琴: http: //jsfiddle.net/11684/raPDd/5/编辑为:
var fi,se,en;\nvar des = "<p>FI: This is fi name, This is fi manufacturer <br /> SE:This is se name, This is se manufacturer <br /> EN: This is en name, This is en manufacturer</p>";\n\nvar match = des.match(/<p>FI:([a-zA-Z ,]+)<br \\/> SE:([a-zA-Z ,]+)<br \\/> EN:([a-zA-Z ,]+)<\\/p>/);\nfi = match[1];\nse = match[2];\nen = match[3];\n\n//After that just split on the comma:\n\nvar fi_name = fi.split(",")[0];\nvar fi_manu = fi.split(",")[1];\nvar en_name = en.split(",")[0];\nvar en_manu = en.split(",")[1];\nvar se_name = se.split(",")[0];\nvar se_manu = se.split(",")[1];\n\xe2\x80\x8b\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
309 次 |
| 最近记录: |