例如像javaeye论坛这个编辑器一样的
如果我单击List按钮就会生成下面的列表
[code="java"]
[list]
[*]
[/list]
[/code]
现在我要转换成如下
-
但是用正则表达式子去不到换行符。。。
我下的正则表达式如下:
reg = /[list]\n(.*?)\n[\/list]/g;就是没有办法取到
[code="java"]
[list]
[*]
[/list]
[/code]取到的都是空,还望大家指点
[b]问题补充:[/b]
还是没看懂什么意思。能说清楚点吗?我把你的代码拷贝到编辑器里运行了,弹出信息,跟我上面的要求有关吗?
孺子不教,请多指教。
[b]问题补充:[/b]
很感谢您的回复。目前我也像您一样,做到了这样的一步
[code="java"]
var list = '[list]\n[*]\n[/list]';
var reg = /[list]\n(.*?)\n[\/list]/g;
[/code]定义了上面两个变量,并且写好了如同您给我第一个回答那样的正则表达式。
我现在画面上有个按钮,就像JAVAEYE网站上编辑器中的List按钮一样(就在您给我回复的时候,上面有按钮可以按出来,有Code,有B等等)。
同样我按下List按钮,在我的textarea入力框中会显示如下代码
[code="java"]
[list]
[*]
[/list]
[/code]我是在单击按钮的时候,直接把
[code="java"]
var list = '[list]\n[*]\n[/list]';
[/code]
值写到了textarea框中,写进去的时候"list"换行显示在了textarea中,和javaeye网站的编辑器一样,换行显示了。问题是,我再去取的时候,用正则表达式去取,并想替换成
[code="java"]
[ul]
[li]
[ul]
[/code]
就怎么也取不到了,我取的方式如下:
[code="java"]
var str = "";
str = $("#editor_text").html();//editor_text就是textarea入力框
[/code]
用上面的正则表达式
[code="java"]
var reg = /[list]\n(.*?)\n[\/list]/g;
[/code]
怎么也匹配替换不到了。
但是我输入判断语句,确实又存在"\n"
[code="java"]
if(text.indexOf("\n") != -1)
{
alert("测试是否有换行!");
}
[/code]
测试证明换行确实存在。如果您还不明白,简单的说,我就是想做一个和javaeye的【list】按钮一样的功能,并且在预览的时候能看到【ul】的效果。
谢谢。
[b]问题补充:[/b]
你好。
还是不行,两个取出来的字符串是一样的。
[code="java"]
var val = $("#editor_text").val();
alert(val);
alert($("#editor_text").html());
[/code]取出来的值都是
[code="java"]
[list]
[*]
[/list]
[/code]
这样的字符串
[b]问题补充:[/b]
源代码比较避讳了。实在抱歉。你能把你写的发给我看看吗?
我这里确实取不到啊。