Ask Your Question
2

What is the regex code in Java to separate a string using commas, one or more spaces, and the boundaries of digits and letters, while excluding dots?

asked 2023-05-30 17:20:48 +0000

nofretete gravatar image

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
0

answered 2023-05-30 17:29:01 +0000

david gravatar image

The regex code in Java to separate a string using commas, one or more spaces, and the boundaries of digits and letters, while excluding dots would be:

String regex = "[,\\s]+(?![\\d\\.]+)\\b(?<![\\d\\.]+)";

Explanation:

  • [,\\s]+ - matches one or more comma or whitespace characters
  • (?![\\d\\.]+) - negative lookahead, to exclude any digits or dots immediately following the separator
  • \\b - word boundary, to match the boundary between a word character (letter or digit) and a non-word character (space or comma)
  • (?<![\\d\\.]+) - negative lookbehind, to exclude any digits or dots immediately preceding the separator

Example usage:

String input = "ABC, 123 DEF 567, HIJ.890";
String[] parts = input.split("[,\\s]+(?![\\d\\.]+)\\b(?<![\\d\\.]+)");
System.out.println(Arrays.toString(parts));

Output:

[ABC, 123, DEF, 567, HIJ.890]
edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account. This space is reserved only for answers. If you would like to engage in a discussion, please instead post a comment under the question or an answer that you would like to discuss

Add Answer


Question Tools

Stats

Asked: 2023-05-30 17:20:48 +0000

Seen: 7 times

Last updated: May 30 '23