【问题标题】:Remove regex from string array从字符串数组中删除正则表达式
【发布时间】:2011-12-09 06:20:51
【问题描述】:

我需要从字符串数组中删除';'。有什么解决办法吗?

我在课堂上所做的是检索一段没有空格连接的长字符串

(thisisalongpieceofstringtobeseparated)

我通过在它们之间插入';' 来分隔它们

(this;is;a;long;piece;of;string;to;be;separated;)

然后我使用.split(";") 将它们添加到数组中。一切都成功了,但最后一个索引是';'

this 

is 

a 

long 

piece 

of 

string 

to 

be 

separated; 


需要去掉最后一个;

根据要求,代码如下。

 while (line != null) {

            if(line.contains("../../"))
            {

                int startIndex = line.indexOf("../../") + 6;
                int endIndex = line.indexOf(">", startIndex + 1);
                String abc = "http://www.google.com/";
                String imageSrc = line.substring(startIndex,endIndex);

                //complete full url
                String xyz = abc +imageSrc;
                xyz = xyz.substring(0,xyz.indexOf('"'));
                xyz = xyz +";";
                content += xyz;
                            mStrings = content.split(";");

【问题讨论】:

  • 首先我会更容易生成正确序列化的字符串。例如:(a;b;c) 而不是 (a;b;c;)
  • 你能给我们看看代码吗?我无法使用 String.split 重现您的问题
  • @Hend:发布您的代码。你在代码的其他地方有问题。
  • 好的,我已经在代码中添加了。请帮帮我。非常感谢

标签: java regex arrays string


【解决方案1】:
    String str="This; is; my; test;";
    String[] strArr=str.split(";");
    for(int i=0;i<strArr.length;i++)
    {
        System.out.println("Str:::"+strArr[i]);
     // add strArr[i] to an array or go through Arrays.toString()
    }

代码中没有什么特别之处,我的意思是,如果您使用的是 spilt(),那么它已经为您工作了,如果没有,那么您的代码有问题,发布您的代码以查看您的代码到底有什么问题,否则做这样

【讨论】:

    【解决方案2】:

    我不认为你在告诉我们整个故事,因为当你在 ; 上拆分时,后面的 ; 将被忽略。通过运行此测试代码亲自查看:

    public static void main(String[] args) {
        System.out.println(Arrays.toString("a;b;c;".split(";")));
    }
    

    输出:

    [a, b, c]
    

    “答案”是什么都不做!它应该已经工作了!

    【讨论】:

      【解决方案3】:

      在拆分之前从字符串中删除最后的; 不是最简单的吗?也就是说,删除最后一个字符(假设总是;):

      var newStr = str.substring(0, str.length-1);
      

      然后在那个字符串上拆分。

      【讨论】:

        【解决方案4】:

        Mikel 的解决方案工作量少很多,但您也可以使用 StringTokenizer 并将 returnDelims 指定为 false。

        http://docs.oracle.com/javase/1.4.2/docs/api/java/util/StringTokenizer.html

        【讨论】:

          猜你喜欢
          • 2022-06-28
          • 2021-01-17
          • 2014-06-20
          • 1970-01-01
          • 1970-01-01
          • 2021-09-07
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多