`
zwhc
  • 浏览: 270870 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

typoglycemia

    博客分类:
  • java
阅读更多
单词里面字母乱序不影响阅读的现象,学名叫做Typoglycemia :
http://en.wikipedia.org/wiki/Typoglycemia

package test;

import java.util.ArrayList;
import java.util.Collections;

public class Test001 {

	private static String typoglycemia(String s){
		if(s.length()<3){
			return s;
		}
		ArrayList al = new ArrayList();
		for(int i=1; i<s.length()-1; i++){
			al.add(s.charAt(i));
		}
		Collections.shuffle(al);
		StringBuffer sb = new StringBuffer();
		sb.append(s.charAt(0));
		for(int i=1; i<s.length()-1; i++){
			sb.append( al.get(i-1) );
		}
		sb.append(s.charAt(s.length()-1));
		return sb.toString();
	}
	
	private static void test01(){
		String[] ss = {
				"This",
				"tutorial",
				"is",
				"designed",
				"for",
				"two",
				"groups",
				"of",
				"people",
				"The",
				"first",
				"includes",
				"those",
				"who",
				"are",
				"new",
				"to",
				"Eclipse",
				"and",
				"want",
				"to",
				"understand",
				"it's",
				"basic",
				"functionality",
				"Although",
				"we",
				"use",
				"a",
				"Java",
				"project",
				"as",
				"our",
				"example,",
				"this",
				"tutorial",
				"involves",
				"no",
				"programming",
				"and",
				"is",
				"designed",
				"so",
				"that",
				"the",
				"content",
				"is",
				"relevant",
				"to",
				"any",
				"application",
				"that",
				"uses",
				"the",
				"Eclipse",
				"workbench"
			};
		for(int i=0; i<ss.length; i++){
			//System.out.println( s );
			System.out.print( typoglycemia(ss[i]) );
			System.out.print( " " );
		}
	}
	
	private static void test02(){
		String s = "Typoglycemia is a neologism given to a purported recent discovery about the cognitive processes behind " +
				"reading written text. The word does not refer to any actual medical condition related to hypoglycemia. The " +
				"word appears to be a portmanteau of \"typo\", as in typographical error, and \"hypoglycemia\". It is an urban " +
				"legend/Internet meme that appears to have an element of truth to it.\r\n\r\n" +
				"The legend, propagated by email and message boards, purportedly demonstrates that readers can understand the " +
				"meaning of words in a sentence even when the interior letters of each word are scrambled. As long as all the " +
				"necessary letters are present, and the first and last letters remain the same, readers appear to have little " +
				"trouble reading the text.";
		StringBuffer sb = new StringBuffer();
		int begin = 0;
		int end = 0;
		boolean isBegin = false;
		for(int i=0; i<s.length(); i++){
			char c = s.charAt(i);
//			System.out.println( "isBegin:" + isBegin );
//			System.out.println( "c:" + c );
			if(isBegin == false){
				if( (c>='A' && c<='Z') || (c>='a' && c<='z') ){
					isBegin = true;
					begin = i;
				} else {
					sb.append(c);
				}
			}
			else{
				if( (c>='A' && c<='Z') || (c>='a' && c<='z') ){
				} else{
					isBegin = false;
					end = i;
//					System.out.println( "begin:" + begin );
//					System.out.println( "end:" + end );
					String s1 = s.substring(begin, end);
					sb.append(typoglycemia(s1));
					sb.append(c);
				}
				
			}
//			System.out.println( "isBegin:" + isBegin );

		}
		System.out.println( s );
		System.out.println( sb.toString() );
	}

	
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		test02();
	}

}




运行结果:
原文:
Typoglycemia is a neologism given to a purported recent discovery about the cognitive processes behind reading written text. The word does not refer to any actual medical condition related to hypoglycemia. The word appears to be a portmanteau of "typo", as in typographical error, and "hypoglycemia". It is an urban legend/Internet meme that appears to have an element of truth to it.

The legend, propagated by email and message boards, purportedly demonstrates that readers can understand the meaning of words in a sentence even when the interior letters of each word are scrambled. As long as all the necessary letters are present, and the first and last letters remain the same, readers appear to have little trouble reading the text.

----------------------------
打乱后:
Toeiyyplmcga is a nlsoiogem gievn to a pruroeptd rneect deicvsroy about the cvtgiinoe pcseoress bnihed rianedg wteitrn txet. The word deos not refer to any aauctl micaedl cntodoiin rtlaeed to hymicyoplega. The wrod aepraps to be a potramnaetu of "typo", as in tpgiycphoaarl error, and "hepiymoylgca". It is an urabn leengd/Ieetnnrt mmee taht arpeaps to have an enelmet of tturh to it.

The leegnd, ptrapogead by email and msgaese brados, ptlrouedpry dtartmeonses taht rdreaes can udnetsnrad the manenig of wrdos in a snceetne eevn wehn the ineitorr leterts of each wrod are sleramcbd. As lnog as all the ncseerasy lttrees are prsenet, and the frist and last lrteets rmaein the same, rerdaes apepar to have ltilte tlbuore rnaedig the text.
分享到:
评论

相关推荐

    Word Welter-crx插件

    这种扩展的灵感来自一种被称为“ Typhoglycemia(Typoglycemia)”的新词(http://en.wikipedia.org/wiki/Typoglycemia),它是“据称有关阅读书面文本背后认知过程的最新发现”。 例如,即使文本被弄乱了,大多数人...

    单词Welter「Word Welter」-crx插件

    这种扩展的灵感来自一种被称为“ Typhoglycemia(Typoglycemia)”的新词(http://en.wikipedia.org/wiki/Typoglycemia),这是“据称有关阅读书面文本背后的认知过程的最新发现”。 例如,即使文本被弄乱了,大多数...

    spring-boot-2.3.0.RELEASE.jar中文-英文对照文档.zip

    # 压缩文件中包含: 中文-英文对照文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文-英文对照文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    C接口函数参考手册样本.doc

    C接口函数参考手册样本.doc

    scratch少儿编程逻辑思维游戏源码-小小王国.zip

    scratch少儿编程逻辑思维游戏源码-小小王国.zip

    mysql全国区域代码表3级

    mysql全国区域代码表3级

    scratch少儿编程逻辑思维游戏源码-我的世界 地牢通关.zip

    scratch少儿编程逻辑思维游戏源码-我的世界 地牢通关.zip

    spring-boot-1.5.14.RELEASE.jar中文-英文对照文档.zip

    # 压缩文件中包含: 中文-英文对照文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文-英文对照文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    1-附件2:两个医院随访的抗抑郁药使用后主诉情况.xlsx

    两个医院随访的抗抑郁药使用后主诉情况

    一个轻量级、可移植的纯 NES 仿真器库

    一个轻量级、可移植的纯 NES 仿真器库

    spring-boot-2.4.9.jar中文文档.zip

    # 压缩文件中包含: 中文文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    spring-boot-1.5.19.RELEASE.jar中文-英文对照文档.zip

    # 压缩文件中包含: 中文-英文对照文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文-英文对照文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    scratch少儿编程逻辑思维游戏源码-像素猫3.zip

    scratch少儿编程逻辑思维游戏源码-像素猫3.zip

    自来水厂水处理系统的WinCC组态与西门子300PLC程序解析及其应用

    内容概要:本文深入探讨了自来水厂水处理系统的自动化解决方案,重点介绍了WinCC组态软件和西门子300PLC程序的具体应用。文中首先简述了自来水厂作为城市供水系统核心的作用,随后详细讲解了WinCC组态软件在实时监控和控制方面的功能,以及西门子300PLC在数据处理、控制逻辑和通信等方面的关键角色。接着,文章具体阐述了水源采集与处理、水质检测与监控、自动化控制系统三个主要环节的技术实现方式。最后,强调了西门子PLC技术在提高生产效率、实时监控与预警、优化生产流程等方面的优势。 适合人群:从事工业自动化领域的工程师和技术人员,尤其是关注水处理行业的专业人士。 使用场景及目标:适用于希望深入了解自来水厂自动化控制系统的读者,旨在帮助他们掌握WinCC组态和西门子300PLC的实际应用方法,提升水处理系统的运行效率和安全性。 其他说明:本文不仅提供了理论知识,还结合实际案例进行了解析,有助于读者更好地理解和应用相关技术。

    三菱PLC FX2N源码与STM32工控板结合的高性能工业控制解决方案

    内容概要:本文介绍了三菱PLC FX2N源码V9.x版与STM32工控板的结合,展示了其强大功能和应用场景。三菱PLC FX2N源码提供清晰的程序架构和详细的注释,支持多种指令如DECO、ENCO、SEGD,并优化了RTC时间功能。STM32工控板则支持2路高速脉冲输出、2路外部脉冲输入、2路485 Modbus RTU主从机模式等功能。两者结合为工业控制带来了更高的性能和更多样化的功能。 适合人群:从事工业自动化领域的工程师和技术人员,尤其是对三菱PLC和STM32有研究兴趣的人群。 使用场景及目标:适用于需要高效、稳定工业控制系统的设计和开发,旨在提升工业设备的精确控制能力,提高生产效率和质量。 其他说明:文中提到的具体功能和特性有助于开发者更好地理解和应用三菱PLC FX2N源码与STM32工控板的结合,推动工业自动化的发展。

    三相下垂双逆变器同步并联控制技术的研究与应用

    内容概要:本文深入探讨了三相下垂双逆变器同步并联控制技术,重点介绍了下垂控制的基本原理及其在微电网中的应用。文章详细解释了下垂控制如何通过调整频率和电压幅值来实现负载的自动分配,并讨论了在多台逆变器并联时可能出现的环流问题以及解决方案,如虚拟阻抗法。此外,还介绍了同步环节的关键技术,特别是改进型锁相环的应用,并提供了具体的实现代码示例。最后,文章分享了一些实用的调试技巧和经验,强调了参数整定的重要性。 适用人群:从事电力电子、微电网控制领域的研究人员和技术人员。 使用场景及目标:适用于希望深入了解三相下垂双逆变器同步并联控制技术的工程师和科研人员,旨在帮助他们掌握核心技术,解决实际工程中的问题。 其他说明:文中提供的代码示例和调试方法有助于读者更好地理解和应用相关技术,提高系统的稳定性和性能。

    Google Python Style

    Google Python Style

    spring-boot-1.2.5.RELEASE.jar中文-英文对照文档.zip

    # 压缩文件中包含: 中文-英文对照文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文-英文对照文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    scratch少儿编程逻辑思维游戏源码-像素竞技场.zip

    scratch少儿编程逻辑思维游戏源码-像素竞技场.zip

    scratch少儿编程逻辑思维游戏源码-星之卡比(2).zip

    scratch少儿编程逻辑思维游戏源码-星之卡比(2).zip

Global site tag (gtag.js) - Google Analytics