用正则表达式截取字符串

sissoko 2008-09-10 06:47:23
将指定字符串中以M开头以N结尾的子串截取出来
这个正则表达式怎么写
...全文
111 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
刘振锋 2008-09-10
  • 打赏
  • 举报
回复
public static void main(String[] args) {
String input = "ihaomdkinkkmkkkiihiinkkoh" ;
String regex = "(m[^n]*n)" ;
Pattern pattern = Pattern.compile(regex);
Matcher m = pattern.matcher(input) ;
while(m.find()){
System.out.println(m.group(1));
}
}

输出结果是:
mdkin
mkkkiihiin
sissoko 2008-09-10
  • 打赏
  • 举报
回复
谢谢了
我其实是要在JS里用这个正则表达式
但你已经给了我足够的信息了 万分感谢
mayuanfei 2008-09-10
  • 打赏
  • 举报
回复
上面的正则不能批评汉字还有一些标点等,下面是非空格的字符都可以。

public static void main(String[] args) {
String[] strs = {"mn","mon","mea","moon","meeeeen","cmon","mona","m n","m好好好n"};
Pattern pattern = Pattern.compile("^m[^ ]*n$");
for(String str : strs) {
Matcher m = pattern.matcher(str);
System.out.println(m.find());
}
}
mayuanfei 2008-09-10
  • 打赏
  • 举报
回复

public static void main(String[] args) {
String[] strs = {"mn","mon","mea","moon","meeeeen","cmon","mona"};
Pattern pattern = Pattern.compile("^m[a-zA-Z]*n$");
for(String str : strs) {
Matcher m = pattern.matcher(str);
System.out.println(m.find());
}
}

62,635

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧