用正则表达式提取用空格分隔的字符

比如 aaa bbb ccc ddd 怎样用正则表达式分别提取aaa、bbb、ccc、ddd呢?

如果是空格间隔,其实直接用split(str,"")来转换为数组即可

 

如果一定要用正则,可以这样写 [^\s]*

追问

你好 我这个貌似必须得用正则表达式
问下我怎样只提取aaa 或者bbb 呢?也就是提取指定的第几个数据。先谢谢你了

追答

匹配的是一组数据,你可以用 for循环获取某一个

追问

我这是在yahoo pipes 中用的。貌似没办法用数组什么的,处理这行数据好像必须用regex。。

追答

不了解你说的yahoo pipes,这个正则匹配的肯定是一组数据,需要你在程序语言里去处理,正则毕竟不是程序

温馨提示:内容为网友见解,仅供参考
第1个回答  2014-04-10
$string=" aaa bbb ccc ddd";
my @results=$string=~/(\S+)/g;

结果提取到数组@results中,我使用的是perl语法,其它语言你可以仿照写。
第2个回答  2014-04-10
用什么分隔就除去什么
[^ ]+

用正则表达式提取用空格分隔的字符
如果是空格间隔,其实直接用split(str,"")来转换为数组即可 如果一定要用正则,可以这样写 [^\\s]

用正则表达式,如何将空格前后的字符串提取出来?
([0-9-]+) ([0-9:]+)你要的结果分别在$1和$2里面,直接用就好了。

如何用正则表达式提取一串数字,数字中间有空格
System.out.println(s); \/\/输出12345678910

用正则表达式截取 空格 前的字段
^([^\\s]+)\\s+([^\\s]+)分别取分组1和分组2

正则表达式如何换行且有空格提取
\\s*([\\d.]*)\\s*<\\\/em>取分组1

正则表达式 截取字符串 取第一个空格前面的字符
public static String getReplace(String num) { \/\/取第一个空格前面的字符 num = num.split(" ")[0];return num;} 3、编写代码,调用该函数,进行测试;System.out.println("空格前字符串为:" + getReplace("快乐大本营 2014 第1集"));System.out.println("空格前字符串为:" + get...

...换行有空格,要截取指定字符后面的内容 正则表达式要怎么写呢,比如截...
去表示。2.你说的,可以用:a(.+)去匹配 其中(.+)就是你要的a后面的内容。注意是需要添加DOTALL的flag的。不同语言,有具体不同的写法。比如python中的是 re.DOTALL 简写为 re.S 表示,点'.'同时匹配你所希望的回车换行,空格等空白字符。关于正则的更多的内容,可参考:crifan 正则表达式学习...

用正则表达式将前后空格用空字符串替代:replace(\/(^\\s*)|(\\s*$)\/g...
\\s* 就是有0个或多个空格 (^\\s*) 表示的就是以0个空格或者多个空格开头 | 表示或的意思, 也就是满足| 左边的也成立, 满足 | 右面的也成立.\\s*前面说过了 的意思是字符串必须以前面的规则结尾 (\\s*$) 的意思就是, 以0个空格或者多个空格结尾 \/...\/g 是正则表达式的属性, 表示全文...

...获取以空格开头,特定字词结尾的正则表达式,大师帮忙
你试试这个正则表达式 \\b( |\\n).*?((大学)|(公司))\\b 我给你一个Java语言的例子,你看看吧.import java.util.regex.Matcher;import java.util.regex.Pattern;public class AAA { public static void main(String[] args) { String s=" 简历 北京大学\\n联想公司"; String regex="\\\\b(...

求正则表达式,验证输入16位十进制数字,每四位用空格隔开
^(([0-9a-fA-F]{4}[ ])+?)?[0-9a-fA-F]{4}

相似回答