js拆分字符串问题

自渡96 2017-12-12 11:00:47

汉字以这种形式拆分


如果是汉字加数字,不要把数字拆分开来(我的代码把数字也拆分了)


如果是英文加数字,希望可以拆为ABC,20,30.5,EGF,30,6.5

这样的拆分能实现吗求解
...全文
303 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
文盲老顾 2017-12-19
  • 打赏
  • 举报
回复
var aaa = ['我在家','离我100米','abc20-30.5~efg30-6.5'];for(var i=0;i<aaa.length;i++){var bbb=aaa[i];console.log(bbb.match(/(\d+(\.\d+)?|[a-z]+|[^a-z\d~-])/gi))}
天际的海浪 2017-12-13
  • 打赏
  • 举报
回复

var str = "离我家100米";
var g = str.match(/[0-9\.]+|./ig);
var arr = [];
for (var i = 1; i <= g.length; i++)
	for (var j = 0; j <= g.length-i; j++)
		arr.push(g.slice(j,j+i).join(""));
alert(arr.join("\n"));
自渡96 2017-12-13
  • 打赏
  • 举报
回复
引用 10 楼 jslang 的回复:

var str = "离我100米";
var g = str.match(/[0-9\.]+|./ig);
var arr = [str];
for (var i = g.length-1; i >= 1; i--) {
	arr.unshift(g.slice(0,i).join(""));
	arr.push(g.slice(0-i).join(""));
}
alert(arr.join("\n"));
好像有问题啊,如果是“离我家100米”那就“我家”这个字符串没办法单独显示出来
天际的海浪 2017-12-12
  • 打赏
  • 举报
回复

var str = "离我100米";
var g = str.match(/[0-9\.]+|./ig);
var arr = [str];
for (var i = g.length-1; i >= 1; i--) {
	arr.unshift(g.slice(0,i).join(""));
	arr.push(g.slice(0-i).join(""));
}
alert(arr.join("\n"));
天际的海浪 2017-12-12
  • 打赏
  • 举报
回复
引用 8 楼 qq_35626760 的回复:
[quote=引用 7 楼 jslang 的回复:] var str = "离我100米"; alert(str.match(/[0-9\.]+|./ig));
这个我会,在这个基础上我还需要“离我”两个字的组合[/quote] 在这个基础上遍历数组进行组合啊
自渡96 2017-12-12
  • 打赏
  • 举报
回复
引用 7 楼 jslang 的回复:
var str = "离我100米"; alert(str.match(/[0-9\.]+|./ig));
这个我会,在这个基础上我还需要“离我”两个字的组合
天际的海浪 2017-12-12
  • 打赏
  • 举报
回复
var str = "离我100米"; alert(str.match(/[0-9\.]+|./ig));
自渡96 2017-12-12
  • 打赏
  • 举报
回复
引用 5 楼 jslang 的回复:
var str = "ABC20-30.5~EGF30-6.5"; alert(str.match(/[a-z]+|[0-9\.]+/ig));
还有两个能帮忙写下吗
天际的海浪 2017-12-12
  • 打赏
  • 举报
回复
var str = "ABC20-30.5~EGF30-6.5"; alert(str.match(/[a-z]+|[0-9\.]+/ig));
自渡96 2017-12-12
  • 打赏
  • 举报
回复
引用 2 楼 liuziying35 的回复:
可以的 <script type="text/javascript"> var str="需要拆分的字符串?" document.write(str.split(" ") + "<br />") document.write(str.split("") + "<br />") document.write(str.split(" ",3)) </script> 像这样 用split函数即可
我给的图片只是举例而已,我要的那样的规则,自己没写出来,能帮忙写一下吗
自渡96 2017-12-12
  • 打赏
  • 举报
回复
[quote=引用 1 楼 showbo 的回复:]
console.log('离我家100米'.split(/\b/g))//["离我家", "100", "米"]
console.log('离我家100.5米'.split(/\b/g))//["离我家", "100", ".", "5", "米"]
自己处理下小数点 那个只是举例而已,我要的那样的规则,自己没写出来
zy35 2017-12-12
  • 打赏
  • 举报
回复
可以的 <script type="text/javascript"> var str="需要拆分的字符串?" document.write(str.split(" ") + "<br />") document.write(str.split("") + "<br />") document.write(str.split(" ",3)) </script> 像这样 用split函数即可
Go 旅城通票 2017-12-12
  • 打赏
  • 举报
回复
console.log('离我家100米'.split(/\b/g))//["离我家", "100", "米"]
console.log('离我家100.5米'.split(/\b/g))//["离我家", "100", ".", "5", "米"]
自己处理下小数点

Web开发学习资料推荐
asp json类库解析json字符串
easyui datebox设置日期范围

87,907

社区成员

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

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