如何在特定单词后获取接下来的 2 或 3 个字符
How to get next 2 or 3 characters after specific word
我有很多这样的行:
<mixer name="Adif2 Input Volume" value0="96" value1="96" />
<mixer name="Adif2 Input Switch" value0="1" value1="1" />
<mixer name="Voice Input Volume" value0="101" value1="96" />
<mixer name="Voice Input Switch" value0="1" value1="1" />
<mixer name="Ext Input Volume" value0="96" value1="96" />`
我想在 value0=" 文本后获取数字(value0 中的数字可以从 0 到 127),但仅来自语音输入音量和语音输入开关行。我如何在 Java?
您可以使用 indexOf(..)
例如:
int b = str.indexOf("value0=\"") + "value0=\"".length();
int e = str.indexOf("\"",b);
String number = str.substring(b,e);
您可以解析 xml (http://docs.oracle.com/javase/tutorial/jaxp/dom/readingXML.html)
或将正则表达式与捕获组一起使用 (http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html)
我有很多这样的行:
<mixer name="Adif2 Input Volume" value0="96" value1="96" />
<mixer name="Adif2 Input Switch" value0="1" value1="1" />
<mixer name="Voice Input Volume" value0="101" value1="96" />
<mixer name="Voice Input Switch" value0="1" value1="1" />
<mixer name="Ext Input Volume" value0="96" value1="96" />`
我想在 value0=" 文本后获取数字(value0 中的数字可以从 0 到 127),但仅来自语音输入音量和语音输入开关行。我如何在 Java?
您可以使用 indexOf(..)
例如:
int b = str.indexOf("value0=\"") + "value0=\"".length();
int e = str.indexOf("\"",b);
String number = str.substring(b,e);
您可以解析 xml (http://docs.oracle.com/javase/tutorial/jaxp/dom/readingXML.html)
或将正则表达式与捕获组一起使用 (http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html)