sjzquchen
Sizy
采纳率81.8%
2017-03-01 09:29 阅读 885

如题:B022A1111-1 我想取得中间 A前面的字符,如何识别这个英文字符呢?

10

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

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

4条回答 默认 最新

  • shen_wei shen_wei 2017-03-01 09:57

    使用正则表达式。。。

     ^*A
    
    点赞 评论 复制链接分享
  • oXiaoKang12 oXiaoKang12 2017-03-01 10:32

    'B022**A**1111-1'.indexOf('A')

    点赞 评论 复制链接分享
  • showbo GoCityPass新加坡曼谷通票 2017-03-02 01:21
    点赞 评论 复制链接分享
  • sy7571871 syhleo 2017-03-02 01:27
    @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;
                }
            }
        }
    
    }
    
    
    

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

    点赞 评论 复制链接分享