Regex 正则表达式:为什么要用逗号开始逗号分隔的字符串?

Regex 正则表达式:为什么要用逗号开始逗号分隔的字符串?,regex,arrays,string,mongodb,delimited-text,Regex,Arrays,String,Mongodb,Delimited Text,我在阅读时发现了一个逗号分隔的路径字符串。在本例中,字符串以逗号开头,我想知道这样做是否与在列表中的每个项目后面都有一个逗号相比有什么原因或好处 我将这篇文章标记为特定于正则表达式的原因是,在Java中,我不希望在开头使用逗号,因为我会使用 String[]数组=String.split(“,”) …在PHP中,我会使用 $array=explode(“,”,$string) 在这两种情况下,以逗号开头的字符串将导致$array[0]处出现空字符串 提前谢谢 索引到regex比有条件地执行/^[

我在阅读时发现了一个逗号分隔的路径字符串。在本例中,字符串以逗号开头,我想知道这样做是否与在列表中的每个项目后面都有一个逗号相比有什么原因或好处

我将这篇文章标记为特定于正则表达式的原因是,在Java中,我不希望在开头使用逗号,因为我会使用

String[]数组=String.split(“,”)

…在PHP中,我会使用

$array=explode(“,”,$string)

在这两种情况下,以逗号开头的字符串将导致
$array[0]
处出现空字符串


提前谢谢

索引到regex比有条件地执行
/^[^,]SomeTopic,*
在参考文章中,这有一个好处,因为使用了regex
/,编程,/
。它只搜索单词前面有逗号的和后面有逗号的单词。如果您将字符串开头的逗号保留在外,您还需要处理此问题,因为正则表达式找不到
编程。

示例中没有使用
拆分
类型函数,而是执行一些涉及查看字符串中字符的操作

“guard”前导分隔符是这样的:如果您想在以下位置找到单个条目
aaa

",zzzaaa,bbb,aaa,zzz"

您可以搜索
、aaa、
,从而避免了
zzzaaa
的错误匹配如果搜索
aaa、

如果第一个项目是
SomeTopic,
,这将失败,如果
CSomeTopic
其中
C
是随机字符,则将通过。使用正则表达式,您只需要指定begin
^
,然后检查是否有逗号
(?=,)
,所有这些合在一起,您就可以得到
/^SomeTopic(?=,)/
。要在任何地方搜索它,可以使用
/^SomeTopic(?=,)|(?@HamZa上一个正则表达式肯定不会使用indexOh,但忘了提到平台是否支持lookaround断言。我有点激动,但似乎应该是这样work@HamZa实际上,问题在于索引的使用,只有特定的正则表达式在以特定方式使用索引时才能使用索引