我有一个包含工作日和营业时间的字符串,如何使用正则表达式将它们分成几行?一个字符串的例子是:
Mån - Tor6:30 - 22:00Fre6:30 - 20:00Lör9:00 - 18:00Sön10:00 - 19:00
我想在小写字母和数字之间以及数字和大写字母之间拆分
Mån - Tor
6:30 - 22:00
Fre
6:30 - 20:00
Lör
9:00 - 18:00
Sön
10:00 - 19:00
提前致谢!
最佳答案
拆分
(?<=\d)(?=\p{L})|(?<=\p{L})(?=\d)
例如,在 C# 中:
splitArray = Regex.Split(subjectString, @"(?<=\d)(?=\p{L})|(?<=\p{L})(?=\d)");
或在 PHP 中:
$result = preg_split('/(?<=\d)(?=\p{L})|(?<=\p{L})(?=\d)/u', $subject);
或在 Java 中:
String[] splitArray = subjectString.split("(?<=\\d)(?=\\p{L})|(?<=\\p{L})(?=\\d)");
或在 Perl 中:
@result = split(m/(?<=\d)(?=\p{L})|(?<=\p{L})(?=\d)/, $subject);
关于regex - 如何使用正则表达式在数字和字符之间进行拆分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4340320/