求JS正则匹配

沙伽more 2014-08-18 03:31:38
字符串:a_all cssb|oba_b strc|天天
当字符串里面遇到空格或|时匹配; 匹配过后为:
a_all+空格
cssb|
oba_b+空格
strc|
天天
...全文
159 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
漫舞云中影 2014-08-19
  • 打赏
  • 举报
回复
引用 4 楼 shaode0101 的回复:
[quote=引用 2 楼 u011836122 的回复:]

var src = "a_all cssb|oba_b strc|天天";
var re = /.+?( |\||$)/g;
var arr;
while ((arr = re.exec(src)) != null) {
    document.write("<br /><br />");
    document.write(arr[0]);
};
var re2=/.+?[\s\|$]/g; 为什么结果少了最后一个?[/quote] 你的错了。你自己看看你的意思变成什么了。 我的var re = /.+?( |\||$)/g;括号里的表示空格或竖线 | 或结尾$。 因为你说的是遇到空格或竖线|,所以没有用\s(表示空白符)。 你字符串的末尾没有空格也没有竖线,所以应该匹配末尾$。
xuzuning 2014-08-19
  • 打赏
  • 举报
回复
$ 表示行尾
dust_dust 2014-08-19
  • 打赏
  • 举报
回复
$放进字符类[]中表示的就是\$啊哈哈哈
dust_dust 2014-08-19
  • 打赏
  • 举报
回复
引用 3 楼 superwfei 的回复:
/[^\s\|]+([\s\|]|$)/gi
$不能放进[]里面吗?
dust_dust 2014-08-19
  • 打赏
  • 举报
回复
引用 2 楼 u011836122 的回复:

var src = "a_all cssb|oba_b strc|天天";
var re = /.+?( |\||$)/g;
var arr;
while ((arr = re.exec(src)) != null) {
    document.write("<br /><br />");
    document.write(arr[0]);
};
var re2=/.+?[\s\|$]/g; 为什么结果少了最后一个?
文盲老顾 2014-08-18
  • 打赏
  • 举报
回复
/[^\s\|]+([\s\|]|$)/gi
漫舞云中影 2014-08-18
  • 打赏
  • 举报
回复

var src = "a_all cssb|oba_b strc|天天";
var re = /.+?( |\||$)/g;
var arr;
while ((arr = re.exec(src)) != null) {
document.write("<br /><br />");
document.write(arr[0]);
};

沙伽more 2014-08-18
  • 打赏
  • 举报
回复
急死了啊,怎么没有人回啊

87,904

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧