Example data expected output sds-rwewr-dddd-cash0-bbb cash0rrse-cash1-nonre cash1loan-snk-cash2-ssdd cash2garb-cash3-dfgfd cash3loan-unwan-cash4-something cash4通用模式在這里,需要在給定字符串的最后一個連字符之前提取幾個字符。var regex1= /.*(?=(?:-[^-]*){1}$)/g ; //output will be "ds-rwewr-dddd-cash0" from "sds-rwewr-dddd-cash0-bbb "var regex2 = /\w[^-]*$/g ; //output will be "cash0" from "ds-rwewr-dddd-cash0"var res =regex2.exec(regex1.exec(sds-rwewr-dddd-cash0-bbb)) //output will cash0雖然上面嵌套的正則表達式按預期工作但可能不是優化的。因此,對于優化正則表達式的任何幫助將不勝感激
正則表達式 - 在最后一個連字符/破折號之前提取文本
慕少森
2023-05-11 14:31:22