cuốn sách gpt4 ai đã làm

c# - 正则表达式拆分 obj.method(obj.attr, obj.attr2)

In lại Tác giả: Vũ trụ không gian 更新时间:2023-11-03 21:46:01 32 4
mua khóa gpt4 Nike

我正在寻找一个正则表达式来分割这种内容:

obj.method(obj.attr,obj.attr2)

我希望拆分返回一个数组:

["obj", "method(obj.attr, obj.attr2)"]

所以,我不能在“.”上拆分因为它还会拆分方法属性的内容。

我必须在“.”上拆分我认为只有当它们不在“(”和“)”之间时。

任何帮助将不胜感激,谢谢!

câu trả lời hay nhất

如果你真的想用正则表达式解决这个问题,最好用匹配而不是拆分。

为此你可以使用 balancing groups计算左括号的个数。

例如,您可以获取此表达式的所有匹配字符串,以获得所需的结果:

(?x) # allow comments and ignore spaces
(?:
[^.()]+ # don't match .
|
\(
(?:
[^()]+ # in here . are allowed
| (? \( ) # open++
| (?<-open> \) ) # open-- (as long as open > 0)
)*
(?(open) (?!) ) # fail if open > 0
\)
)+

关于c# - 正则表达式拆分 obj.method(obj.attr, obj.attr2),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17007573/

32 4 0
không gian vũ trụ
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress