我有一个字符串
area shape =“rect”coords =“348,140,362,152”alt =“驾驶0h30,从05-25 11:34开始。 在4英里WSW的Pleasant Prairie,WI“title =”驾驶0h30,从05-25 11:34开始。 在4英里威斯康星州Pleasant Prairie的WSW“
我正在寻找一种方法来拉出第一个字或2个alt,可以是开车或下班等,并拉出它开始的日期时间,持续多长时间以及城市和州的位置。正则表达式无法提取数据的每一部分
答案 0 :(得分:0)
有多种方法可以做到这一点,尤其取决于您希望如何从regex
中获取数据以及regex
扫描的数据如何变化,但是,对于 alt 部分,您可以尝试这样的事情:
alt=\"(Driving|(?:(?:off|on) duty)|sleeper birth) for (.+)?, starting (.+)?\. at (.+)? title
开启case insensitivity
。
然后各种group
s(1-4这里)包含组件。
你可以为其他组件做类似的事情,或者在每个组件的单独正则表达式中(可能更容易阅读),或者作为一个大的正则表达式,它只是添加额外的group
每个组成部分。
您可以在继续使用此网站时帮助测试正则表达式:http://www.regexplanet.com/advanced/java/index.html