java – 以下划线开头但不包含任何下划线的正则表达式
发布时间:2020-12-15 04:42:46 所属栏目:Java 来源:网络整理
导读:我试图从最后一个下划线获取文件的名称,直到结束. 例如, ABC_AA.xml应该是ABC 和 ABC_AASD_AD_AA.xml应为ABC_AASD_AD 我正在考虑使用非贪婪的exlusive ^符号. 我试过这个: String nameToSearch = testName.replaceAll("_(^(_).)+.xml$",""); 解决方法 如
我试图从最后一个下划线获取文件的名称,直到结束.
例如, 我正在考虑使用非贪婪的exlusive ^符号. String nameToSearch = testName.replaceAll("_(^(_).)+.xml$",""); 解决方法
如何使用简单的子串而不是正则表达式
String nameToSearch = testName.substring(0,testName.lastIndexOf('_')); 或者如果没有_你可以使用 String noSuffix = testName.substring(0,testName.lastIndexOf('.'));//remove ".xml" String nameToSearch = noSuffix.substring(0,testName.lastIndexOf('_')); 但如果你真的想使用正则表达式,那么你可以试试 testName.replaceAll("_[^_]*[.]xml$",""); 它将匹配(并删除)_具有零个或多个非_字符[^ _] *并以.xml结尾. 如果没有_你可以使用_ [^ _] *可选 testName.replaceAll("(_[^_]*)?[.]xml$",""); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |