一段字符串,要求取第二个英文字母前的字符。

题目是:一段字符串,要求取第二个英文字母前的字符。
例:B022**A**1111-1
我想取得第二个英文字母前面的字符,如何识别这个英文字符呢?(A的字符位置不定,不得用位数来取)
谢谢,

0

7个回答


    public string GetSubstring(string s)
    {
        string r = "";
        int charNum=0;
        for (int i = 0; i < s.Length; i++) {
            if ((s[i] >= 'A' && s[i] <= 'Z') 
                || (s[i] >= 'a' && s[i] <= 'z')
                ) charNum++;
            if (charNum >= 2) break;
            r += s[i];
        }
        return r;
    }




        Response.Write(GetSubstring("B022A1111-1") + "<BR>");
        Response.Write(GetSubstring("022A111B1-1") + "<BR>");
1
@Test
public void testStr(){
    String str="B02a241A**1111-1";
    int flag=0;
    for(int i=0;i<str.length();i++){//遍历字符串
        char c=str.charAt(i);// c为字符串中的字符
        if( ('a'<=c && c<='z')||('A'<=c && c<'Z') ){
            flag++;
            if(flag==2){
              // str.charAt(i-1) 就是第二个英文字母前的字符!!!!
                System.out.println(str.charAt(i-1));
                break;
            }
        }
    }

}

0

^[A-Za-z]+$ 用正则表达式判断获取字符串
用for循环变量
string str="B022**A**1111-1";
//将str字符串转化为数组
int i,index=0,len;
for( i=0 ; i < str.length ; i ++){
if(str[i].match('^[A-Za-z]+$')){
index+=1;
}
if(index==2){
len=i;
}
}
//打印第二个英文字母前面的字符长度 len+1
//然后截取

大致思路应该这样,自己简单写的回答的不好,勿怪

0

以上是java实现的,C#思路差不多。希望可以帮助到你!

0

char数组c接收字符串 c[i]for循环 ch=c[i] 如果ch>='a'&&ch<='z'||ch>='A'&&ch<='Z'count++;当count=2 输出c[i-1]

0

split函数 直接从你要取的字符切分 split('A') 然后 split('A')[0]就是你前面的字符 当然你这个字符串中不能有其他字符

0

如果你的第一个字符是字母的话,我就建议你用正则表达式直接获取;
表达式内容是 ([A-Za-z].*?)[A-Za-z].*
然后匹配捕获组就可以了;
c#不了解,我这里给你写个js和java版本的参考吧
javascript:
var orig = 'B1823****213C247823A384B';
var reg = /([A-Za-z].*?)[A-Za-z].*/g;
var result = reg.exec(orig);
//查看是否有捕获结果
if(result){//第一组
//alert(result[1]);
console.log(result[1]);
}

java:
public static void test() {
    String orig = "B1823****213C247823A384B";
    Pattern pattern = Pattern.compile("([A-Za-z].*?)[A-Za-z].*");
    Matcher matcher = pattern.matcher(orig);
    if(matcher.find()) {
        System.out.println("----------->" + matcher.group(1));//第一个捕获组数据
    }
}



    希望对你有帮助....
0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
sql取第二个“.”前面的字符
sql取第二个“.”前面的字符rn[img=https://img-bbs.csdn.net/upload/201612/04/1480837567_83622.png][/img]rn如果没有“.”或者只有一个“.”就不变,如果有两个以上的“.”就取第二个”.“前的字符串,可能有两个三个四个以上的点
求取前几位的SQL
我想取资料表的前几位但是前几 @number 是可变的rn高人指点一下rnselect top 5 × from table没法
js字符按要求取相应字符,在线等
js代码中,rnrnvar content="天地有正气,杂然赋流形。下则为河岳,上则为日星。于人曰浩然,沛乎塞苍冥。皇路当清夷,含和吐明庭。时穷节乃见,一一垂丹青。";rnrn这内容中,现需:取 第二外 句号到第三个句号之间的那段内容,如何实现呀,thanks
求取字符高和宽
string ="中国"rn字体宋体,字号14,rn如何知道 中国 这个汉字在屏幕上的高度和长度
截掉字符串里面一段字符
如 string a=“”rn 我怎么把 http://192.168.0.109:9019/去掉,请高手帮忙,急
提取字符串中间的一段字符
数据如下,要把中间的数字提取出来。 -------------------------------------------------- | 哈哈哈,我挖到了47572美元                     | | 哈哈哈,我挖到了743496美元                   | | 哈哈哈,我挖到了74183美元                     | | 哈哈哈,我挖到了...
如何截取第二个“-”前面的字符串
如何截取第二个“-”前面的字符串rn 如 Y-80M1-2/0.75 变成Y-80M1,rn Y-80M2-2/1.1 变成Y-80M2rnrnrn规格型号rnY-80M1-2/0.75rnY-80M2-2/1.1rnY-90S-2/1.5rnY-90L-2/2.2rnY-100L-2/3rnY-112M-2/4rnY-132S1-2/5.5rnY-132S1-2/5.5rnY-132S2-2/7.5rnY-132S2-2/7.5rnY-160M1-2/11rnY-160M1-2/11rnY-160M2-2/15rnY-160M2-2/15rnY-160L-2/18.5rnY-160L-2/18.5rnY-180M-2/22rnY-180M-2/22rnY-200L1-2/30rnY-200L1-2/30rnY-200L2-2/37rnY-200L2-2/37rnY-200L2-2/37rnY-225M-2/45rnY-225M-2/45rnY-225M-2/45rnY-250M-2/55rnY-280S-2/75rnY-280M-2/90rnY-280M-2/90rn
截取特定字符前的字符串
如题,表tblrnrnname cnrnfda,ornaa,o=rnbb,3,ornrnrn如何将name中",o"前面的字符串截取下来保存到cn列中
求取字符串~(新人求助)!
如何得到http://www.sina.com.cn/index.jsp请求地址中的index[即地址中的红色部分]。要求不能用substring()方法。
求取字符串的长度的函数
1。求取字符串的长度的函数 为了进制换算 请问是不是没有进制换算的函数 rnrnrnrn4294967295rn
急:求取字符串的函数
sqlrn字段name varchar(50)rn有一记录如  "abcdefg"rn如何求得从第3个字符后取2个字符得到"cd"
急:求取字符串?
某个TABLE的字段里有这样的字符串值:rnrnct_name idrn-----------------------------------rn上海:30/北京:60/ 1rn上海:120/南京:60/ 2rn北京:60/深圳:50/ 3rn上海:100/杭州:90/ 4rn上海:130/昆明:140/ 5rnrn我现在想查询出 '上海'的价格值, 并转换成数字按照升序排序.rnrn谢谢各位帮忙!
求取文章前几行的方法
如果我要提取一篇文章的前5行显示,做成内容提要~~rnrn如一行显示20个字,如果不考虑chr(13),则取前100个字即可,可是CHR13,以及CHR10怎么处理?不能过滤掉.rnrn要考虑超过20个汉字的自动换行,CHR10,CHR13等..英文暂不考虑
在第一个字符串中删除在第二个字符串中出现的所有字符
从第一字符串中删除第二个字符串中所有的字符,例如第一个字符串“We are students.”,第二个字符串“aeiou”,则删除后的结果为“W r stdnts.”。通过文章知道,我们可以通过hash表来统计第二个字符串中的字符,然后再逐一遍历第一个字符,如果在hash表里面存在该字符,就进行删除操作。代码如下://在第一个字符串中删除在第二个字符串中出现的所有字符#include "stda
删除第一个字符串中出现过的第二个字符串的字符
笨办法,循环。这里提醒大家复习一下String、StringBuffer以及StringBuilder的区别。public class twoString { public static void main(String[] args) { // TODO Auto-generated method stub //注意String、StringBuffer、StringBuilder的...
判断一个字符是不是英文字母
有没有函数可以用rnrn实在不行就用别的来做.rnrnrn反正要简单实现.
如何 获取 字符串 中的 一段 字符啊
20020060516rnrnrnrn这是一个字符串。。现在不是 XML 文件里的。。rnrnrn我想获取 200 中的 200 怎么获取呢 ~~
求一段16字符串转字符的函数
rnrnrn我的工程中是rnASP代码中request("name")就会取得参数7A313233343536373839rnrnrn就是把7A313233343536373839这个字符串显示为z123456789rnrn写了个函数实现.谢谢了
怎么截取字符串中的一段字符?
C++怎么截取字符串中的一段字符,像delphi下copy,VB下的mid函数?
c# 截取字符串中一段字符!
大概是用那个函数来着!
在字符串中获取指定位置的一段字符(java)
一、获取某个字符后面的一段字符串。        如我想获得 图片acb.jpg 的格式 jpg,即获取 . 后面的字符串。 String str = &quot;abc.jpg&quot;; String str2 = str.substring(str.indexOf('.')+1); 二、获取某个字符前面的一段字符串。        如我想获得 图片acb.jpg 的文件名 abc,即获取 . 前面的...
如何提取字符串中的一段字符?
我想提取诸如"刘德华1","黎明2"中的"刘德华","黎明"该如何提取?
如何更改字符串中间的某一段字符
char*str=“…hello worldaaaaaahow are you…”;rn我想要修改aaaaaa这些字符,已知前面的world和后面的how是固定的格式rn如何快速的将aaaaaa换成bbbbbb ?rn
上万字符 之中取一段字符串!
各位老师,rn虽然if (1 == sscanf("INSERT INTO jz_xx (ddddd,eeeee,ffffff)", " INSERT INTO jz_xx (%[^)]", r))可以正常截取 ddddd,eeeee,ffffff),rn但如果是rnif (1 == sscanf("aaaaaaaa INSERT INTO jz_xx (ddddd,eeeee,ffffff)", " INSERT INTO jz_xx (%[^)]", r))就不行了。rn实际上 INSERT INTO前面还有很多字符。rn这个功能用sscanf能实现吗?rn还有怎样去掉ddddd,eeeee,ffffff)后面的括号?
请问在一段字符串中如何查找'%'字符
我想在'aaaa%aaa'中用charindex查出'%'的位置请问怎样查询????
一段字符串 找出标记里面的字符
如:"sdsf$[color=red]saa[/color]Kjsadadaaaaaaasdgggg$kasldj$[color=red]s[/color]$[color=red]lds[/color]"rnrn找出红色的字符
求一段字符串删除指定字符的程序
字符串格式为rn12#16#42#43#45#rn现在给出整型数42,要求字符串中的42#,得到新的字符串12#16#43#45#rn我的思路是把字符串分割放入一个数组,强制转化为整型和42比较,删除,但是怎么把正型数再变为原来的字符串形式,小弟出学,请各位大大不要见笑.rn
求取任意字符串的所有子序列
思路:要用到递归的思想。在获得某个子序列以后,然后从子序列后面的位置开始,将后面的字符依次添加到子序列的后面。 代码:/* substr:子序列 vec:存放子序列的vector pos:字符串中当前子序列的后面一位 */ #include <iostream> #include <vector>> #include <string> using namespace std; void Getsu
去掉字符串前面的特定字符
小功能,记录下,以后可以直接用 去掉一个字符串前面的特定字符,比如现在数据,有的字符串前面有0,一个或者若干个,有的没有,现在需要去掉字符串前面的0,直到第一个不为0的字符,程序如下: private String removeZeroFromShopId(String shopId) { // 声明一个StringBuffer对象 StringBuffer sb = n...
怎样清除指定字符前的所有字符串?
字符串如下,我想清除vid=及之前的字符,也就是只保留198445623。这其中只有vid=是固定的字符。rnhttp://ooioosy.wwowo9e.com/owuiwd/vid=198445623rnrn我现在的方法是这样的,通过计算vid=的位置来清除,有没有更节省系统资源的方法?rn$vid = "http://ooioosy.wwowo9e.com/owuiwd/vid=198445623"rnsubstr($vid,(stripos($vid,'vid=')+4));
正则表达式,字符串前不包括 某特定字符
例子: rnrn我们的祖国是花园,花园的花朵真鲜艳,祖国啊,祖国 -]-什么祖国啊-[- rnrn[color=#800000]将上面的祖国替换成 国家 但是前后有-]-和-[-的就别替换了 [/color] rnrn结果: rnrn我们的国家是花园,国家的花朵真鲜艳,国家啊,国家 -]-什么祖国啊-[- rnrnrn请问怎么用正则表达式,[color=#008000]排除掉前后包含-]-和-[-的[/color]
如何取得字符串的前几个字符?
比如我要取得字符串中的前6个字符,如:123456999898999,取前六个字符,得到123456.用什么函数?
如何判断字符串中的前三个字符?
如何判断字符串中的前三个字符?rn例: "and ComCharacter"rn先判断前三个字符是否为"and"rn如果字符串中是"and" 开头,那么就将其去除,最后只剩下"ComCharacter" ;rn请问用什么方法???
怎样取一个字符串的前两个字符?
如题
sql字符串中取前几个字符?
有一个字符串 2010|1 怎样实现取“|”(竖线)前的值2010;不能用left这个函数,因为竖线前面的字符个数会发生变化
如何删除字符串abcd的前两个字符?
截取字符串中的前几个字符
label2.caption="abcdefg"rnlabel3.caption="123456"rnrn现在我想让 rnrnlabel3.caption="ab123456" rnrn在VB6中如何实现?rnrn也就是说怎么能提取出label2中的前2个字符?rnrn上面是个小例子,我实际的程序是日文的,请帮助!
取字符串前几个字符的函数是什么?
取字符串前几个字符的函数是什么?
如何去掉某个字符前的字符串
如: 列arn 1/arn 222/brn 22/cfdrn如何获取/后的数据rn即 列 arn arn brn cfd
怎样获得一个字符串的前两个字符?
怎样获得一个字符串的前两个字符?

相似问题

3
java给定字符串,解析出字符串字母及每个字母个数?
3
java生成一个由大写字母和数字组成的6位的随机字符串,并且字符串不重复
2
字符串常量的值是一个地址常量,将字符串赋值给字符数组后,为什么数组名的值与字符串常量的值并不一致?
3
如何将一段字符串的代码变得可以执行
1
用c#解析一段字符串,如下图中所示,把图中上半部分解析成下半部分的样式
1
linux shell 如何替换字符串中‘[' ']'之间一段为其他字符串
3
正则表达式匹配并替换一段字符串
10
json输入较长字符串时,怎么让字符串变多行,而不是都写在一行中。
2
查找一个字符串里有几个我要找的子字符串 不可以用String
7
js未知字符串长度内容的情况下截取字符串
2
Linux shell命令之从文件中提取要求的字符串
4
求助!一段字符串拼接,谁看到帮帮忙
1
怎样将一段生成的完整xml字符串插入到另一xml字符串文件中的某个节点中去??
3
c语言字符串按照等字节数发送出去
3
MIPS汇编语言,题目:输入一个字符串和一个字母,输出该字母在字符串中出现的次数,该如何写呢呢?
4
c语言设计程序字符转换
4
将一个字符串拆分出的所有字符整合成一个字符串类型的数组
4
字符串的筛选,求大神教教
4
如何等长梯度切割字符串生成字符串集?
4
求问下面一段字符串如何使用C#使用正则表达式拆分成两个字符串