Java uses regexp to split space?
•
Java
I try to match and capture commands and parameters from the following inputs:
!command param1 param2
I am using the Java classes pattern and matcher:
private Pattern regExp = Pattern.compile( "^!(?<command>[^\\s]*)((?:\\s+)(?<param>[^\\s]*))*$"); public String command() { m = regExp.matcher(getMsg()); return m.matches() ? m.group("command") : ""; } public String param(int index) { return m.group(index); }
Use this, too( http://fiddle.re/yanta6 )To experiment
Some pointers and help are appreciated!
Solution
Personally, I don't use regular expressions If your input is
!command param1 param2 paramX
Then normal string operation can do a good job Just discard the opening! Then use split on ''
The content of this article comes from the network collection of netizens. It is used as a learning reference. The copyright belongs to the original author.
THE END
二维码