`

分割字符串

    博客分类:
  • java
 
阅读更多
@Test
	public void test2() {
		String str = "今天 是个  艳阳天 啊  啊     啊       啊 啊   啊 abctest";
		str = "and 的! 春天  an! cf 故事 好好 ccc";

		// String stt = LanguageCharUtils.trim(str);
		String stt = copy(str);
		System.err.println(stt);
	}

	public String copy(String str) {
		str = trim(str);

		// 0 => ' ', 1=>e 2=>c 3=>es 4=>cs
		char lt = ' ';
		char[] ch = str.toCharArray();

		StringBuffer sb = new StringBuffer();
		for (int i = 0; i < ch.length; i++) {
			char c = ch[i];
			if (c == ' ') {
				if (lt == 'e') {
					sb.append(' ');
				}
				continue;
			}

			if (isEng(c)) {
				if (lt == 'c') {
					sb.append(' ');
				}
				lt = 'e';
			} else {
				if (lt == 'e') {
					sb.append(' ');
				}
				lt = 'c';
			}

			sb.append(c);
		}

		return trim(sb.toString());
	}

	public boolean isEng(char c) {
		return String.valueOf(c).matches("[a-zA-Z]");
		// return en.contains(c);
	}

	/**
	 * 删除多余空格
	 * 
	 * @param str
	 */
	public String trim(String str) {
		while (str.indexOf("  ") > -1) {
			str = str.replace("  ", " ");
		}

		return str.trim();
	}
分享到:
评论

相关推荐

    plsql分割字符串

    自定义函数`FUNCTION_SF_SPLIT_STRING`如上所示,是一个典型的用于分割字符串的函数,它接受两个参数:待分割的字符串`STRING`和用作分隔符的子字符串`SUBSTRING`,返回一个`VARCHAR2`类型的数组,其中包含了分割后...

    Arduino 分割字符串库,strFenGe.rar

    `strFenGe.rar` 文件提供的可能是 Arduino 的一个自定义库,用于方便地根据特定分隔符分割字符串。在这个场景中,我们主要探讨 Arduino 中如何处理字符串以及如何使用类似库进行字符串分割。 1. **Arduino String ...

    Java分割字符串

    在Java编程语言中,分割字符串是一项常见的操作,它允许我们将一个长字符串分解成多个子字符串,每个子字符串对应原字符串中的某个部分。这通常通过使用`split()`方法来实现,该方法是Java `String`类的一个成员。在...

    java 分割字符串

    在Java编程语言中,分割字符串是一项常见的操作,它允许我们将一个长字符串分解成多个子字符串,每个子字符串对应原字符串中的某一部分。这通常通过使用`split()`方法来实现,该方法是`String`类的一个实例方法。让...

    delphi7分割字符串

    1. **使用分隔符分割字符串**:在Delphi中,可以使用`SplitString`函数或`Pos`函数配合`Copy`函数来实现。例如,如果要以逗号分隔字符串,可以这样做: ```delphi var InputStr, Part: string; Parts: TStrings;...

    pb分割字符串,自己写的split()方法

    这导致开发者在面对需要分割字符串的任务时,不得不自己编写相应的函数来实现这一功能。 #### 方法概述 本文将详细介绍一种自定义的`split()`方法,该方法可以在PB环境中使用,帮助开发者轻松地将字符串按照指定的...

    sscanf练习详解-分割字符串

    本篇文章将深入讲解如何使用`sscanf`来有效地分割字符串。 `sscanf`函数的基本语法如下: ```c int sscanf(const char *str, const char *format, ...); ``` 这里,`str`是指向要读取的字符串的指针,`format`是一...

    易语言分割字符串进制转换工具

    《易语言分割字符串进制转换工具》是一款专为编程初学者和爱好者设计的实用软件,主要功能是将字符串按照特定规则进行分割,并进行进制之间的转换。易语言,作为中国本土化的一种编程语言,以其简单易学的特点深受...

    分割字符串用法

    ### 分割字符串用法 在C语言中,处理文本数据是一项常见的任务,特别是在解析配置文件、分析用户输入或处理文件内容时。`strtok`函数是C语言标准库中的一个非常有用的工具,它用于将一个字符串分割成多个子串,这些...

    C#分割字符串的几种方法

    本文将深入探讨几种在C#中分割字符串的方法,包括使用`Split()`方法、利用正则表达式进行分割,以及一些高级用法。 ### 使用Split()方法 `Split()`方法是最基础也是最常用的字符串分割方式。它接受一个字符数组...

    mysql分割字符串

    在MySQL数据库中,有时我们需要处理存储在单一字段内的多个值,这时就涉及到字符串的分割操作。这个场景在处理如CSV格式的数据或者存储一串相关但独立的信息时尤为常见。本篇将详细介绍MySQL中的字符串分割技术及其...

    C++分割字符串的实现

    如果你使用的是C++17或更高版本,可以利用范围基础(Range-based)的特性,结合`std::views::split`来分割字符串。这是一个更现代且高效的方法,但它需要`&lt;ranges&gt;`头文件和对C++17新特性的理解: ```cpp #...

    fortran分割字符串和字符串替换的子程序_Fortran_

    本篇将详细介绍如何在Fortran中进行字符串的分割与替换,以帮助你更好地理解和应用这些技术。 1. **字符串分割**: 在Fortran中,没有内置的字符串分割函数,但我们可以自定义一个子程序来实现这个功能。通常,...

    指定符号分割字符串

    `std::regex_token_iterator`可以按正则表达式分割字符串,这使得我们可以用更灵活的方式来分割字符串,例如: ```cpp #include #include #include std::vector&lt;std::string&gt; regexSplit(const std::string& ...

    oracle分割字符串方法

    这里利用了函数 regexp_substr和connect by 及oracle的正则相关函数实现oracle分割字符串方法

    分割字符串函数 分割字符串函数

    在编程领域,分割字符串函数是处理文本数据时非常常用的一种工具。它允许我们将一个长字符串按照特定的分隔符拆分成多个子字符串,方便我们进行后续的分析、处理或存储。这里,我们将深入探讨字符串分割函数的相关...

    C语言中计算字符串长度与分割字符串的方法

    C语言strlen()函数:返回字符串的长度 头文件: #include strlen()函数用来计算字符串的长度,其原型为: unsigned int strlen (char *s); 【参数说明】s为指定的字符串。 strlen()用来计算指定的字符串s 的...

    work2_分割字符串_字符串处理_

    首先,我们来关注“分割字符串”这一主题。字符串分割是将一个长字符串依据特定的分隔符切割成多个子字符串的操作。在不同的编程语言中,这个过程有不同的实现方式。 在C语言中,`strtok()` 函数是用于分割字符串的...

    分割字符串函数

    根据给定的信息,我们可以深入探讨一下“分割字符串函数”这一主题。在计算机编程中,处理字符串是一项非常常见的任务。无论是从用户输入中提取有用信息、解析配置文件还是处理文本数据,字符串操作都扮演着至关重要...

    mfc 字符串中查找特殊字符 利用特殊字符分割字符串

    mfc 字符串中查找特殊字符 利用特殊字符分割字符串 mfc 字符串中查找特殊字符 利用特殊字符分割字符串 mfc 字符串中查找特殊字符 利用特殊字符分割字符串 mfc 字符串中查找特殊字符 利用特殊字符分割字符串 mfc 字符...

Global site tag (gtag.js) - Google Analytics