使用带有多个分隔符的正则表达式(Java/Kotlin)拆分文本

使用带有多个分隔符的正则表达式(Java/Kotlin)拆分文本,java,regex,string,kotlin,Java,Regex,String,Kotlin,我有一个字符串行,代码为2个字符,名称以>分隔 例如,CP>RENATO DE SA,CP>FRAIS。我想用代码和名称将此行分成两行 我有以下案文: 预期结果: 您可以使用此正则表达式进行拆分?=[A-Z]{2}>|> 你可以查一下 正则表达式详细信息: 正则表达式将匹配两件事?=[A-Z]{2}>|> ?=[A-Z]{2}>空格后跟两个大写字母,然后是空格,然后是一个>符号,但我们需要两个大写字母才能使用?=正向前瞻 |或 >后跟>号的空格 您可以检查可以使用此正则表达式拆分的?=[A-Z]

我有一个字符串行,代码为2个字符,名称以>分隔

例如,CP>RENATO DE SA,CP>FRAIS。我想用代码和名称将此行分成两行

我有以下案文:

预期结果:


您可以使用此正则表达式进行拆分?=[A-Z]{2}>|>

你可以查一下

正则表达式详细信息: 正则表达式将匹配两件事?=[A-Z]{2}>|>

?=[A-Z]{2}>空格后跟两个大写字母,然后是空格,然后是一个>符号,但我们需要两个大写字母才能使用?=正向前瞻 |或 >后跟>号的空格
您可以检查可以使用此正则表达式拆分的

?=[A-Z]{2}>|>

你可以查一下

正则表达式详细信息: 正则表达式将匹配两件事?=[A-Z]{2}>|>

?=[A-Z]{2}>空格后跟两个大写字母,然后是空格,然后是一个>符号,但我们需要两个大写字母才能使用?=正向前瞻 |或 >后跟>号的空格
您可以检查无需正则表达式即可执行的操作:

替换>,。替换,\\n

或者使用正则表达式


replaceAll\\s>,.replaceAll\\s,\\n

您可以不使用正则表达式:

替换>,。替换,\\n

或者使用正则表达式


replaceAll\\s>,.replaceAll\\s,\\n

这对线总是被一个空格隔开吗?你能不能就这样分开;好的,nm,我明白为什么这不起作用了。它们之间用“>`我认为负前瞻可能会为您拆分成对:s.split?!>;但未经测试。@markspace它不起作用,我几乎成了\w{2}的目标。\>\w\124;\ s+\s\w{2}.\>?,但它包含来自下一组的代码。CT,JOSE AQUINO CPare代码总是两个大写字母?两个对之间总是用一个空格隔开吗?你能不能就这样分开;好的,nm,我明白为什么这不起作用了。它们之间用“>`我认为负前瞻可能会为您拆分成对:s.split?!>;但未经测试。@markspace它不起作用,我几乎成了\w{2}的目标。\>\w\124;\ s+\s\w{2}.\>?,但它包含来自下一组的代码。CT,JOSE AQUINO CPare代码总是两个大写字母?谢谢@YCF_L,它工作得很好。。。现在我正在阅读来理解它。谢谢@YCF_L,它工作得很好。。。现在我正在阅读以理解它。
CT >RUSSO CT >JOSE AQUINO CP >RENATO DE SA CP >FRAIS CF >TAMARA STUCCHI CF >VANESSA JULKOWS CM >CRISTINA LOUSTA CM >HANS KROESCHEL CM >CONCEICAO MACIE CM >AIMEE FRARI CM >JONNY MOREIRA
CT, RUSSO 
CT, JOSE AQUINO 
CP, RENATO DE SA 
CP, FRAIS 
CF, TAMARA STUCCHI 
CF, VANESSA JULKOWS 
CM, CRISTINA LOUSTA 
CM, HANS KROESCHEL 
CM, CONCEICAO MACIE 
CM, AIMEE FRARI 
CM, JONNY MOREIRA
import java.util.*

fun main(args: Array<String>) {
    val input = "CT >RUSSO CT >JOSE AQUINO CP >RENATO DE SA CP >FRAIS ...";
    val split = input.split("( (?=[A-Z]{2} >)| >)".toRegex())
    for (i in split.indices step 2) 
       println(split[i] + ", " + split[i + 1])
}
CT, RUSSO
CT, JOSE AQUINO
CP, RENATO DE SA
CP, FRAIS
CF, TAMARA STUCCHI
CF, VANESSA JULKOWS
CM, CRISTINA LOUSTA
CM, HANS KROESCHEL
CM, CONCEICAO MACIE
CM, AIMEE FRARI
CM, JONNY MOREIRA