命令的java正则表达式帮助
我需要解析此命令:
direct print conference <style>:<First Name Last Name>,<First Name Last Name>,<First Name Last Name>,<title>,<conference series name>,<location>,<year>
一个示例命令是:
direct print conference ieee:Sergey Brin,Lawrence Page,,The Anatomy of a Large-Scale Hypertextual Web Search Engine,WWW,Brisbane Australia,1998
我的主要问题是(First Name Last Name)可以为空,但如何使用Regex实现这一点
对于(名字和姓氏)我总是([a-zA-Z]+)([a-zA-Z]+),但是如何用正则表达式定义可能的空位置呢
direct print conference ([a-zA-Z]+):([a-zA-Z]+) ([a-zA-Z]+),([a-zA-Z]+) ([a-zA-Z]+),([a-zA-Z]+) ([a-zA-Z]+),([^,]+),([a-zA-Z]+),([a-zA-Z ]+),([0-9]+)
这是我的正则表达式,如果名称不是空的,但是我如何在正则表达式中包含空字符,如:
([a-zA-Z]+) ([a-zA-Z]+) OR EMPTY ?
我希望你能帮助我
# 1 楼答案
由于您的输入基本上是一个带有特殊开头的CSV,因此此处不需要正则表达式,只需
String.split()
:看live