有人可以帮我调整这个正则表达式/纺织品实时预览吗?

时间:2011-11-30 03:51:29

标签: jquery regex textile

我在jquery纺织品解析器中有这些代码行:

 re = new RegExp('"\\b(.+?)\\(\\b(.+?)\\b\\)":([^\\s]+)','g');
 r = r.replace(re,'<a href="$3" title="$2">$1</a>');

 re = new RegExp('"\\b(.+?)\\b":([^\\s]+)','g');
 r = r.replace(re,'<a href="$2">$1</a>');

这些代码行搜索

之类的字符串
 "hello this is an embedded link":http://www.google.com

并用

替换它们
 <a href="http://www.google.com">hello this is an embedded link</a>

但是,解析器无法识别具有在右引号之前的句点的字符串:

 "This is also a link.":http://www.google.com

如何更改这些行上的正则表达式以允许句点在结束引用之前?我可以发布更多信息和行,如果它会有所帮助。我只是不知道如何写正则表达式..

1 个答案:

答案 0 :(得分:1)

更改

re = new RegExp('"\\b(.+?)\\b":([^\\s]+)','g');

re = /"(?!\s)([^"]*\S)":(\S+)/g;

应该解决这个问题。

可以对第一个表达式应用相同的更改,例如:

re = /"(?!\s)([^"()]+)\(([^"()]+)\)":(\S+)/g;