这是数据
Stream #0.0(ger): Audio: aac, 48000 Hz, stereo, s16 (default)
Stream #0.1: Audio: wmav2 (a[1][0][0] / 0x0161), 48000 Hz, 2 channels, s16, 160 kb/s
这是模式
/Stream #([0-9\.]+).([A-Za-z0-9]+).+Audio/
我需要完整的数字字符串,例如0.0或0.1加上音频语言(ger),如果它有一个!
我的模式不起作用 任何人都可以帮忙吗?
答案 0 :(得分:3)
"/Stream #([0-9\.]+).([A-Za-z0-9]+).+Audio/"
([A-Za-z0-9]+)
中的parens被解释为组,而不是实际字符。你需要用反斜杠来逃避它们。
"/Stream #([0-9\.]+).\\([A-Za-z0-9]+\\).+Audio/"
但是如果你想让这个部分是可选的,你需要在它周围放置另一组parens,并附上?
以使其成为可选:
"/Stream #([0-9\.]+).(\\([A-Za-z0-9]+\\))?.+Audio/"
答案 1 :(得分:2)
试试这个:
/Stream #(\d+\.\d+)(\([A-Za-z0-9]+\))?.+Audio/
如果存在,它应该返回数字i.ex.:0.0作为\ 1组,(ger)作为\ 2组返回。