日期:2014-05-16  浏览次数:20430 次

100分求一个的正则表达式
请求高手帮忙写一个或者两个正则表达式

条件
1,以$开头,空格或者回车键结尾
2,或者,以#foreach开头,半个括号)结尾
3,一个关键字 #end

例子



 $name $title

 #foreach($i in $test)
   $i.name
 #end




如果能用一个正则同时能满足以上两个请求的话,请给一个正则表达式,
如果一个满足不了,就给两个正则表达式吧。

注:如果对java熟悉的话,其实上面就是velocotiy的匹配规则
js的IQ不够,请大牛帮忙,非常感谢。


------解决方案--------------------
<html>
<head>
<script type='text/javascript'>
window.onload = function() {
    var reg = /^(?:\$
------解决方案--------------------
#foreach).*(?:\n+
------解决方案--------------------
\r
------解决方案--------------------
\))$
------解决方案--------------------
#end/g;
var str = "";
var div = document.getElementById('str');
str = div.innerHTML;
var b = reg.test(str);
alert(b);
}
</script>
</head>

<body>
<div id='str'>
    $name $title
 
 #foreach($i in $test)
   $i.name
 #end
</div>
</body>
</html>

------解决方案--------------------
/\$.+?[,\s\r\n]
------解决方案--------------------
#foreach.+?)
------解决方案--------------------
#end/ig
------解决方案--------------------
/\$.+?[,\s\r\n]
------解决方案--------------------
#foreach.+?\)
------解决方案--------------------
#end/
------解决方案--------------------
引用:
谢谢,但是$开头的没有匹配到,