2 u013400939 u013400939 于 2017.01.03 16:10 提问

正则表达式获取指定字符串的操作 1C

如何通过正则表达式获取text2中 XXX.jsp的部分 不要前面或后面的内容
主要目的是要获取到xxx.jsp

public static String getPatternStr(){
// String text2 = "var strUrl = 'sdfs ss FourIStatify.jsp';";
// String text2 = "var strUrl = 'sh/so/sf/sdfs/FourIStatify.jsp';";
String text2 = "var strUrl = 'asdf sh/so/sf/sdfs/FourIStatify.jsp';";
String str = ".*^[A-Za-z0-9]+$.*.jsp";
Pattern p=Pattern.compile(str);
Matcher ma = p.matcher(text2);

    if( ma.find()){

        System.out.println(ma.group());
        return   ma.group();

    }
    return  null;
}

2个回答

qq_29594393
qq_29594393   Ds   Rxr 2017.01.03 16:18

做个字符串切割 String arr[]=splite("/");
获取最后一个数组成员 ,在切割一次 。正则不好 ,只会这样玩

qq_29594393
qq_29594393 回复Logica_: split(/[^A-Za-z]/); 数组的倒数第二个字符串就是你需要的。自己再拼接一个.jsp
一年多之前 回复
u013400939
u013400939 回复当作看不见:但是xxx.jsp前面一个肯定不是字母
一年多之前 回复
u013400939
u013400939 回复当作看不见:没有可用的切割条件 也可能是这样一串“var strUrl = 'abc+FourIStatify.jsp' "我需要匹配到xxx.jsp
一年多之前 回复
qq_29594393
qq_29594393 回复Logica_: split(/[/a.d]/);//切割/ 或a或d 或。 在split 里面使用正则。把复杂的任务化为多个小问题。
一年多之前 回复
u013400939
u013400939 不一定是/可以是其他形式
一年多之前 回复
xiaoyazide
xiaoyazide   2017.01.03 17:11

试试ASCII码进行字符串范围切割,将字符串byte[]化,循环来寻找符合条件的切割点! 图片说明

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
正则表达式-如何从一个字符串中拿到特定内容
做Web开发时,经常需要从一个消息中去取得自己需要的字段信息,如果这个消息是Json或XML类型那很方便。但如果是个字符串呢,就像下面这样: val str = “window.code=200;window.redirect_uri=\”wx.qq.com/cgi-bin/mmwebwx-bin/webwxnewloginpage?ticket=ARiFc26pwMtnUC2PBuJalkaS
使用正则表达式获取指定的字符串的值
/// /// 根据传入的条件,通过正则表达式查询匹配的值 /// /// 要检索的字符串 /// 正则条件 /// 要取值的位置 /// 查询到的值 public static string GetMatchByIndex(string text, string regex, int index) {
正则表达式截取指定字符串内容
获取某个字符串中某一部分的字符内容,通常大家会首先想到使用String.substring方法,但String.substring方法对于某些包含特殊字符和HTML标签的处理不是很完善。例如如下字符串,想要获取sign中的字符,用String.subString方法虽然也能拿到sign中的内容,但有缺陷.... String str="                 "&subject=\"
java 正则表达式获取指定两个字符串之间内容
xml解析利用正则表达式获取指定两个字符串之间内容                       在遇到解析复杂xml的时候,想到大家所想到的都是利用dom4j作为首发工具,但是当遇到层次很多,较为复杂,我们难道还需要从根节点一层一层的解析下去吗?此时不仅代码繁琐,而且准确率还不是那么高,采用此种方式,可以获取指定两种字符串之间的任意xml文本。package com.starit.ana
C#正则表达式:匹配字符串指定字符内容
1 功能需求 匹配字符串 “m1.large(vcpu 2,ram 4G)|c95f5529-47e8-46d4-85da-319eb9905a9b”. 目标字符串 vcpu: “2”, ram: “4”, id:“c95f5529-47e8-46d4-85da-319eb9905a9b”. 2 代码实现 using System; usin
正则表达式获取特定字符下标,分割字符串
在开发中遇到这样的一个报文: 00000123000003RQ0 ################ 000003 0300406.1.14.11123004030pts1   这个报文忽略“00000123000003RQ0 ################ 000003”不看,后边的内容初看有点像xml,但是细看,它的结束标签缺少了结束名称。实质上它只是一张自定义的key-value格式的
正则获取指定字符前面全部或后面全部内容
var blueurl= 127.0.0.1/1.txt var reg = /([/][^/]+)$/; var blueurl = blueurl.replace(reg, ""); var reg2 = /([^/]+)$/;  var bluefile = blueurl.match(reg2)[1]; 第一个正则获取最后一个/之前全部内容, 第二个正则获取最后一个/之后全部内
利用java正则表达式来解析并获取指定的字符串
Java的正则表达式不仅可以用来匹配验证字符串是否符合标准类型,还可以用来解析字符串,获取自己想要得到的数据。在java.util.regex包下提供了系列的类来对字符串进行匹配。来看一下下面的例子: public static String parse (String s) {   Pattern pattern =Pattern.compile("charset=(.+?)\"");
java中用正则表达式获取一个指定的子字符在字符串中出现的指定次数的下标索引,并且进行字符串分割
在开发中遇到这样的一个报文: 00000123000003RQ0 ################ 000003 0300406.1.14.11123004030pts1   这个报文
C#中获取匹配正则表达式的字符
 一、如果字符串中只有一处匹配正则表达式,可用Result来获取匹配字。例如:   string tmpUrl = "http://sports.163.com/nba/";   Regex r = new Regex(@"^http://(?[^/]+)/", RegexOptions.Compiled);   realUrl = "http://" + r.Match(tmpUrl).Re