因为遇到中文就判断错误String str = "Hello World";if (Character.isLetter(str.charAt(0))) { System.out.println("第一个字符是字母...");} else { System.out.println("第一个字符不是字母");}(2).方式二,正则性能差String str = "你好,Hello World";if (str.matches...("^[a-zA-Z].*")) { System.out.println("第一个字符是字母");} else { System.out.println("第一个字符不是字母");}(3)...最完美String str = "你好,Hello World";if (Character.isAlphabetic(str.charAt(0))) { System.out.println("第一个字符是字母...");} else { System.out.println("第一个字符不是字母");}
第 6-12 行用 - 符号来创建非数字型要点。 第 16-19 行用 1,2,3 来创建数字型要点。 最终效果 ? 1.2 公式 标记语言 ?...2 Code 类操作 2.1 Python 代码 以检查系统和 Python 常用包的版本为例。...如果我们想用 count,但是不知道整个单词怎么拼,可以写 L.c + ,这时可看到所有以 c 开头的方法,有 clear, copy 和 count。...如果记得前两个字母,L.co + ,这时可看到所有以 c 开头的方法,有 copy 和 count。...* 通配符 当你只记得某个对象或者其方法的首几位字母, 键会很有用。但是如果你只记得中间几位或者后面机会的字母,我们可以用通配符 *。
一个小巧的库,可以避免自己重新开发功能。利用 Python 包 pangu,可以轻松实现在 CJK(中文、日文、韩文)和半宽字符(字母、数字和符号)之间自动插入空格。...在撰写中文技术博客时,我经常遇到一个问题:在中英文混排时,需要在英文字母、数字和符号两侧添加空格,以使排版更加美观。...Github 地址:https://github.com/vinta/pangu.py 介绍 Python 包 pangu: pangu 是一个专为中文文本处理设计的 Python 库,旨在自动化地在中文文本和半宽字符...(如字母、数字和符号)之间添加适当的空格,确保文本的排版美观且易读。...pangu 自动在中文字符和英文字符之间加上了空格,从而改善了文本的可读性。 (PS. 三引号是 Python 中的一个强大工具,可以用于多种用途。
二、基础正则表达式 元字符 作用 * 前一个字符匹配0次或任意多次。 . 匹配除了换行符外任意一个字符。 ^ 匹配行首。例如:^hello会匹配以hello开头的行。 $ 匹配行尾。...例如:[aoeiu] 匹配任意一个元音字母,[0-9] 匹配任意一位数字,[a-z][0-9] 匹配小写字和一位数字构成的两位字符。 [^] 匹配除中括号的字符以外的任意一个字符。...②匹配在s和d字母之间有任意字符 ? ③匹配所有内容 ? ? 例3.^匹配行首,$匹配行尾 ①匹配以小写x开头的行 ? ②匹配以:结尾的行 ? ③匹配空白行 ? ?...例4:"[]"匹配中括号中指定的任意一个字符,只匹配一个字符。 ①匹配s和i字母中,要不是a、要不是o ? ②匹配任意一个数字 ? ?...例5:"[^]"匹配除中括号的字符以外的任意一个字符 ①匹配不用小写字母开头的行 ? ②匹配不用字母开头的行 ? ? 例6:"\"转义符 ①匹配使用"."结尾的行 ? ?
匹配除了换行符外任意一个字符 ^ 匹配行首 例如 ^hello 会匹配以hello开头的行 匹配行尾 例如 hello 会匹配以hello结尾的行 [] 匹配中括号中指定的任意一个字符,只匹配一个字符...符号^代表匹配行首,符号$代表匹配行尾 grep "^s" test.txt 匹配以s开头的行 grep "b$" test.txt 匹配以b结尾的行 grep "^$" test.txt 匹配空白行...符号[ ]的作用与通配符中的[ ]一致 grep "[0-9]" test.txt 匹配包含有数字的全部行 注意:^用在[ ]内代表取反 grep "[^0-9]" test.txt 匹配包含字母的全部行..."^"匹配行首,"$"匹配行尾 "^M" 匹配以大写“M”开头的行 "n$" 匹配以小写“n”结尾的行 "^$" 会匹配空白行 ---- 元字符 \ ? ---- 元字符 \{n\} ? ?..."\{n,\}"表示其前面的字符出现n次以上 "^[0-9]\{3\}[a-z]"以数字开头,且三个以上字母的行 ---- 元字符 \{n,m\} ?
这是一个关于 pandas 从基础到进阶的练习题系列,来源于 github 上的 guipsamora/pandas_exercises 。...需求: 找出名字以字母"G"开头的记录 找出名字以字母"e"结尾的记录 只列出指定条件的列(含有 "shot" ) 下面是答案了 ---- 需求1 找出名字以字母"G"开头的记录 只要是文本列的处理,首先想到...False]) 类似 bool 列的东西(numpy 数组) 用它可以筛选列: cond = df.columns.str.startswith('G') df.loc[:,cond] 这能只列出,列名开头是字母...个bool列之间做"或"运算,这里的逻辑很简单,"列名叫 Team 或者 是列名包含 shot 的列" 做 "并" 运算,可以使用 "&" ---- 推荐阅读: Python如何提取文本中的所有数字,...原来这问题这么难 懂Excel入门数据分析包pandas(31):文本分列应用 懂Excel轻松入门Python数据分析包pandas(十九):文本条件统计
涉及的内容主要如下: Python-glob模块简介 Python-glob模块实例应用 Python-glob模块简介 glob模块通配符 glob模块是python自己带的一个文件操作模块,可以查找符合自己需求的的文件...**匹配所有文件,包括目录,子目录和子目录里面的文件。 ?代表一个字符。 []匹配指定范围内的字符,如[0-9]匹配数字。 [!] 匹配不在指定范围内的字符。....python开头并且有一个字符的所有py文件. for fname in glob.glob("..../python?.py"): print(fname) 样例三:当前路径文件下以 .python开头并且有一个数字的所有py文件. for fname in glob.glob("....其基本过程文字叙述如下:「将每个输入文件中读取到pandas数据框中,再将所有的数据框追加到一个数据框列表中,最后使用pandas.concat()函数将所有数据框连接成一个数据框」,其中concat(
要处理文本数据,需要比数字类型的数据更多的清理步骤。为了从文本数据中提取有用和信息,通常需要执行几个预处理和过滤步骤。 Pandas 库有许多可以轻松简单地处理文本数据函数和方法。...在本文中,我介绍将学习 5 种可用于过滤文本数据(即字符串)的不同方法: 是否包含一系列字符 求字符串的长度 判断以特定的字符序列开始或结束 判断字符为数字或字母数字 查找特定字符序列的出现次数 首先我们导入库和数据...执行此操作的更常用和有效的方法是通过 str 访问器来进行: df[df["description"].str.len() > 15] 我们可以分别使用startswith和endswith基于字符串的第一个或最后一个字母进行过滤...例如,我们可以选择以“A-0”开头的行: df[df["lot"].str.startswith("A-0")] Python 的内置的字符串函数都可以应用到Pandas DataFrames 中。...df[df["price"].apply(lambda x: x.isnumeric()==True)] 同样如果需要保留字母数字(即只有字母和数字),可以使用 isalphanum 函数,用法与上面相同
2. grep正则表达式元字符集(基本集) ^ :锚定行的开始 如:‘^grep’匹配所有以grep开头的行。...[^] :匹配一个不在指定范围内的字符,如:‘[^A-FH-Z]rep’匹配不包含A–R和T–Z的一个字母开头,紧跟rep的行。 .. :标记匹配字符,如‘love’,love被标记为1。...\以grep开头的单词的行。 \> :锚定单词的结束,如‘grep\>’匹配包含以grep结尾的单词的行。...\w :匹配文字和数字字符,也就是[A–Za–z0–9],如:‘G\w*p’匹配以G后跟零个或多个文字或数字字符,然后是p。...$ ls –l | grep ‘^a’ 通过管道过滤ls –l输出的内容,只显示以a开头的行。 $ grep ‘test’ d* 显示所有以d开头的文件中包含test的行。
相关正则知识: \d 匹配一个数字 \w 匹配一个字母或者数字 * 任意个字符(包括0个), + 至少一个字符 ?...\_] 匹配一个数字、字母或者下划线 [0-9a-zA-Z\_]+ 匹配至少由一个数字、字母或者下划线组成的字符串, 比如'a100','0_Z','Py3000'等等; [a-zA-Z\_][0-9a-zA-Z...\_]*可以匹配由字母或下划线开头,后接任意个由一个数字、字母或者下划线组成的字符串,也就是Python合法的变量 [a-zA-Z\_][0-9a-zA-Z\_]{0, 19}更精确地限制了变量的长度是...1-20个字符(前面1个字符+后面最多19个字符) A|B可以匹配A或B,所以(P|p)ython可以匹配'Python'或者'python' ^表示行的开头,^\d表示必须以数字开头 表示行的结束,\...通配符,匹配所有字符 ^abc 匹配以abc开始的字符串 abc$ 匹配以abc结尾的字符串 [abc] 匹配字符集合 [A-Z0-9] 匹配字符范围 ed|ing|s 匹配指定的字符串,诸如ed
Linux正则表达式一般以行为单位处理。 正则表达式应用非常广泛,存在于各种语言中:php perl Python 等。...1.2 区分通配符与正则表达式 这里一定要弄清楚正则表达式和linux下使用的通配符有本质区别。 正则表达式用来找:【文件】内容,文本,字符串。一般只有三剑客支持。...,awk中,^则是匹配字符串的开始 ^name匹配以name开头的行 $ $ $ 匹配行尾,awk中,$则是匹配字符串的结尾 注意:^$表示匹配空白行 sh$匹配以sh结尾的行 . . ....*匹配任意字符开头的行 ....BREs EREs PREs 描述 实例 [:alnum:] [:alnum:] [:alnum:] 匹配任意一个字母或数字字符 [[:alnum:]]匹配所有带任意一个数字或字母的行 [:alpha:
这个例子中,这比原来的Python 代码仅少 1 行 。然而随着脚本行数的快速增长,正则表达式可以节省脚本的代码量。 re.findall() 以列表形式返回字符串中符合模式的所有实例。...让我们看一些这篇文章将用到的: \w 匹配字母数字字符,即a-z,A-Z,0-9。它也匹配下划线和波折号。 \d 即0-9。...域名通常包含字母数字字符、句点和破折号。这很简单,一个 . 就能搞定。为了使用贪婪模式,我们用*来扩展搜索。这使我们可以匹配直到行结束的任何字符。...如果我们仔细观察这行,我们会发现每个电子邮件都封装在尖括号内,和>。 我们的模式.*包括闭合的尖括号。让我们纠正一下: ? 电子邮件地址以字母数字字符结束,所以我们用\w模式覆盖。...*\w,这意味着我们想要的模式是一组以字母数字字符结尾的字符。这不包括>。 完整电子邮件地址模式是:\w\S*@.*\w。 这是相当多的工作。
> 这一串代码描述是这样子,我们要绕过A-Za-z0-9这些常规数字、字母字符串的传参,将非字母、数字的字符经过各种变换,最后能构造出 a-z 中任意一个字符,并且字符串长度小于40。...之所以会得到这样的结果,是因为代码中对字符"A"和字符"?"进行了异或操作。...通过对未定义变量的自增操作来得到一个数字。...下面是个非常简单的非数字字母的PHP后门: 和Linux下面的通配符? ? 代表匹配一个字符 ` 表示执行命令 " 对特殊字符串进行解析 由于?
通配符使用的地方:shell命令或者shell脚本中 正则表达式使用的地方:字符串处理时,一般有一般正则和perl正则 通配符: * 匹配所有:匹配0-多个任意的字符 ?...匹配不在括号内的一个字符,和正则中的^作用相似,都是反向选择 [a-z] 不区分大小写 [0-9] 匹配数字 [^0-9]出了数字 [[:upper:]] 纯大写 [[:lower:]] 纯小写...[[:alpha:]] 字母 [[:alnum:]] 字母和数字 [[:digit:]] 数字 ....点在通配符中没有意义 当要把以上的* ?...匹配出了换行符意外任意一个字符 ^ 匹配行首 以某个字符开头的行 $ 匹配行位 []匹配括号中的任意一个字符,但是只匹配一个字符 ?
后来才发现,原来不是 Python 数据处理厉害,而是他有数据分析神器—— pandas 前言 Excel 中除了 Vlookup 函数,一系列条件统计函数(sumif、countif、maxif)...xxxifs 类函数即可 在 pandas ,不会有啥条件统计函数的,因为这就是先筛选,再统计: - 行2:得到 性别 列是女性的 bool 列 - 行3:df[cond] 就是女性的记录,简单通过...你会发现,Excel 的统计结果包含小写字母的 ny 结尾!...一次解决所有问题 以上 pandas 的做法主要有以下问题: - 不能用通配符表达不同的文本规则,只能用不同的方法,我记不住这么多方法呀 - 不能忽略大小写(实际上面的需求,pandas 的结果更合理...更多高级应用方法,请关注 pandas 专栏 [带你玩转Python数据处理—pandas]
后来才发现,原来不是 Python 数据处理厉害,而是他有数据分析神器—— pandas 前言 Excel 中除了 Vlookup 函数,一系列条件统计函数(sumif、countif、maxif)...xxxifs 类函数即可 在 pandas ,不会有啥条件统计函数的,因为这就是先筛选,再统计: - 行2:得到 性别 列是女性的 bool 列 - 行3:df[cond] 就是女性的记录,简单通过...你会发现,Excel 的统计结果包含小写字母的 ny 结尾!...一次解决所有问题 以上 pandas 的做法主要有以下问题: - 不能用通配符表达不同的文本规则,只能用不同的方法,我记不住这么多方法呀 - 不能忽略大小写(实际上面的需求,pandas 的结果更合理...更多高级应用方法,请关注 pandas 专栏 [带你玩转Python数据处理—pandas] 总结 本文重点: - 构造 bool 列,是核心知识点 - Series.str.contains 用于文本规则条件匹配
Python内置一系列强大的字符串处理方法,但这些方法只能处理单个字符串,处理一个序列的字符串时,需要用到for循环。...() 等价于str.isdecimal,检查字符串是否只包含十进制字符 startswith() 等价于str.startswith(pat),判断字符串是否以指定字符或子字符串开头 endswith(...drop_whitespace:布尔值,如果为true,则在新行的开头删除空白(如果有) break_long_words:布尔值(如果为True)会打断比传递的宽度长的单词。...每次调用.str时都必须加上前缀,以区别于Python的默认函数,否则会引发错误。...Python常用数据类型的基本操作(长文系列第①篇)牛逼!Python的判断、循环和各种表达式(长文系列第②篇) 牛逼!Python函数和文件操作(长文系列第③篇) 牛逼!
以下是LIKE运算符的用法和示例:示例选择所有以字母 "a" 开头的客户:SELECT * FROM CustomersWHERE CustomerName LIKE 'a%';语法LIKE运算符的一般语法如下...它可以是任何字符或数字,但每个 _ 代表一个且仅代表一个字符。...示例返回以 'L' 开头,然后是一个通配符字符,然后是 'nd',然后是两个通配符字符的城市中的所有客户:SELECT * FROM CustomersWHERE city LIKE 'L_nd__';...示例返回包含字母 'L' 的城市中的所有客户:SELECT * FROM CustomersWHERE city LIKE '%L%';以...开头要返回以特定字母或短语开头的记录,请在字母或短语的末尾添加...示例返回所有以 'La' 开头的客户:SELECT * FROM CustomersWHERE CustomerName LIKE 'La%';以...结尾要返回以特定字母或短语结尾的记录,请在字母或短语的开头添加
案例: 非数字开头 + 两个空格 + 数字/字母/下划线 import re print(re.match(R"^\D\s{2}\w$","a _")) 2....字符串的开始和结束 案例: 输入一个6位数字,必须要以95开头,以8结尾的数字 print(re.findall(r"^95\d{3}8$","958348")) 输出结果: ['958348'] 2...字符串的边界 \b表示单词的边界,指某一个位置前后不都是字母、数字、下划线(\w) 案例:输入一句英文,找出里面以a、b、c开头的单词 str01 = "Use this toggle to the left...我们以一个案例来进行解释 案例: 在前一段英文中,匹配这样的单词,有5个字符;第一个字母和第五个一样,第二个和第四个一样,比如abcba 分析:因为匹配的是单词第一个和最后一个都是单词的边界,故正则表达式的前后都用...\b,第一个字母和第二个字母后面都要用到所以分别给它们设置捕获组。