首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

用于打印单词和no.of的unix外壳脚本。以元音开头的单词

元音是指字母表中的a、e、i、o、u五个字母,以这些字母开头的单词被称为以元音开头的单词。在UNIX外壳脚本中,我们可以编写一个用于打印以元音开头的单词和no.of(出现次数)的脚本。下面是一个示例脚本:

代码语言:txt
复制
#!/bin/bash

# 定义包含所有元音字母的字符串
vowels="aeiouAEIOU"

# 读取文件或输入的文本
input=$1

# 使用grep命令和正则表达式筛选以元音开头的单词
words=$(echo "$input" | grep -oE "\<[$vowels][a-zA-Z]*\>")

# 统计以元音开头的单词出现的次数
count=$(echo "$words" | wc -l)

# 打印结果
echo "以元音开头的单词有:"
echo "$words"
echo "共有 $count 个单词。"

使用该脚本,您可以在命令行中执行以下命令来打印文本中以元音开头的单词和出现次数:

代码语言:txt
复制
bash script.sh "This is a test sentence with some words."

该脚本将输出以下内容:

代码语言:txt
复制
以元音开头的单词有:
is
a
with
words
共有 4 个单词。

这个脚本利用了正则表达式和grep命令来筛选出以元音开头的单词,并使用wc命令来统计单词数量。您可以根据自己的需求修改和扩展该脚本。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

一道算法小题分析过程

简单解析下规则:当一个单词辅音字母开头,将辅音字母移到最后,并添加 ay 比如 california → aliforniacay : c 移动到最后然后添加 ay paragraphs → aragraphspay...:p 移动到最后然后添加 ay glove → oveglay:gl 移动到最后然后添加 ay ⚠️ 这里是找到第一个元音字母之前所有辅音字母 元音字母: a、e、i、o、u 当单词元音字母开头时候直接在单词后面添加...由浅入深: 就是上来先根据给出条件,按照暴力方向去写伪代码 在根据逻辑找关键循环因子 优化手段 尝试优化 伪代码 先写伪代码,这部分代码比较糙,主要用于整理分析过程 VAR STR VAR...vowelLetters = ['a','e','i','o','u'] // 元音开头 IF STR[0] in vowelLetters return STR + 'way' // 在STR...{ // 先准备需要元音数组 const vowelLetters = ['a','e','i','o','u'] // 特殊情况:如果元音开头 if(vowelLetters.includes

1K00

LeetCode 824. 山羊拉丁文

题目 给定一个由空格分割单词句子 S。每个单词只包含大写或小写字母。 我们要将句子转换为 “Goat Latin”(一种类似于 猪拉丁文 - Pig Latin 虚构语言)。...山羊拉丁文规则如下: 如果单词元音开头(a, e, i, o, u),在单词后添加"ma"。 例如,单词"apple"变为"applema"。...如果单词辅音字母开头(即非元音字母), 移除第一个字符并将它放到末尾,之后再添加"ma"。 例如,单词"goat"变为"oatgma"。...根据单词在句子中索引,在单词最后添加与索引相同数量字母'a',索引从1开始。 例如,在第一个单词后添加"a",在第二个单词后添加"aa",以此类推。 返回将 S 转换为山羊拉丁文后句子。...ans += temp.substr(1)+temp[0]+str+" "; //单词首字母不是元音 } ans.pop_back();//最后空格

49220
  • leetcode之山羊拉丁文

    序 本文主要记录一下leetcode之山羊拉丁文 leetcode-online-judge.jpg 题目 给定一个由空格分割单词句子 S。每个单词只包含大写或小写字母。...山羊拉丁文规则如下: 如果单词元音开头(a, e, i, o, u),在单词后添加"ma"。 例如,单词"apple"变为"applema"。...如果单词辅音字母开头(即非元音字母),移除第一个字符并将它放到末尾,之后再添加"ma"。 例如,单词"goat"变为"oatgma"。...根据单词在句子中索引,在单词最后添加与索引相同数量字母'a',索引从1开始。 例如,在第一个单词后添加"a",在第二个单词后添加"aa",以此类推。 返回将 S 转换为山羊拉丁文后句子。...,然后遍历每个单词,判断首字母是否为元音,是的话在后面添加ma,不是的话将首字母移到后面再拼接ma,最后再根据单词在句子中index拼接指定个数a。

    74000

    leetcode-824-Goat Latin(字符串处理)

    要完成函数: string toGoatLatin(string S)  说明: 1、这道题给定一个字符串S,里面包含单词,大小写敏感,单词之间空格隔开,要求把英文转化为“goat latin”...,规则如下: 如果单词元音字母a/e/i/o/u以及它们大写形式开头,那么在单词最后面加“ma”。...如果单词不以元音字母开头,那么把单词首字母放到最后面,再在单词最后面加“ma”。 第一个单词在最后再加“a”,第二个单词在最后再加“aa”,第三个单词在最后再加“aaa”,依此类推。...,j表示空格位置 setset1{'a','e','i','o','u','A','E','I','O','U'}; string word;//代表取出每个单词...res; } 上述代码逻辑清晰,实测6ms,因为服务器接受到cpp submissions有限,所以没有打败百分比。

    83970

    leetcode-824-Goat Latin(字符串处理)

    要完成函数: string toGoatLatin(string S)  说明: 1、这道题给定一个字符串S,里面包含单词,大小写敏感,单词之间空格隔开,要求把英文转化为“goat latin”...,规则如下: 如果单词元音字母a/e/i/o/u以及它们大写形式开头,那么在单词最后面加“ma”。...如果单词不以元音字母开头,那么把单词首字母放到最后面,再在单词最后面加“ma”。 第一个单词在最后再加“a”,第二个单词在最后再加“aa”,第三个单词在最后再加“aaa”,依此类推。...,j表示空格位置 setset1{'a','e','i','o','u','A','E','I','O','U'}; string word;//代表取出每个单词...res; } 上述代码逻辑清晰,实测6ms,因为服务器接受到cpp submissions有限,所以没有打败百分比。

    40820

    每日一题(2022-04-21)——山羊拉丁文

    山羊拉丁文 题目描述: 给你一个由若干单词组成句子 sentence ,单词间由空格分隔。每个单词仅由大写小写英文字母组成。...山羊拉丁文规则如下: 如果单词元音开头(‘a’, ‘e’, ‘i’, ‘o’, ‘u’),在单词后添加"ma"。 例如,单词 “apple” 变为 “applema” 。...如果单词辅音字母开头(即,非元音字母),移除第一个字符并将它放到末尾,之后再添加"ma"。 例如,单词 “goat” 变为 “oatgma” 。...根据单词在句子中索引,在单词最后添加与索引相同数量字母’a’,索引从 1 开始。 例如,在第一个单词后添加 “a” ,在第二个单词后添加 “aa” ,以此类推。...,同样也是变化后word在ansSlice切片中位置 for i, word := range words { index := i + 1 if strings.Contains(assistStr

    18720

    【算法千题案例】每日LeetCode打卡——99.山羊拉丁文

    Java 两种进行解题 要保持一个每天都在学习状态,让我们一起努力成为算法大神吧 今天是力扣算法题持续打卡第99天 算法题 ---- 原题样例:山羊拉丁文 给定一个由空格分割单词句子 S。...山羊拉丁文规则如下: 如果单词元音开头(a, e, i, o, u),在单词后添加"ma"。 例如,单词"apple"变为"applema"。...如果单词辅音字母开头(即非元音字母),移除第一个字符并将它放到末尾,之后再添加"ma"。 例如,单词"goat"变为"oatgma"。...内存消耗:45.9 MB,在所有 C# 提交中击败了43.90%用户 ---- Java 方法:字符串 思路解析 对于句子中每个 word,如果是元音字母,就不变;如果是辅音字母,就旋转这个单词...然后,我们加入 “ma” 期望数量 “a” 以及一个空格。

    44520

    编程变量命名规则及编程单词缩写字典

    另一方面,下划线法是C出现后开始流行起来,在许多旧程序UNIX这样环境中,它使用非常普遍。 (2)匈牙利命名法。广泛应用于象Microsoft Windows这样环境中。...这样做好处在于能增加程序可读性,便于对程序理解维护。 例如:m_lpszStr, 表示指向一个0字符结尾字符串长指针成员变量。...匈牙利命名法关键是:标识符名字一个或者多个小写字母开头作为前缀;前缀之后是首字母大写一个单词或多个单词组合,该单词要指明变量用途。 (3)帕斯卡(pascal)命名法。...较短单词可通过去掉“元音”形成缩写;较长单词可取单词头几个字母形成缩写;一些单词有大家公认缩写。...编程单词缩写规则: 1、大于2个单词则采用缩写规则,否则不用缩写。 2、缩写规则采用国际惯用方法: 元音字母剔除法,首字母除外。 使用单词头一个或几个字母。

    11.9K32

    163. 牛语

    想把一个普通英语单词转换成牛语很简单.如果一个单词一个元音字母('a','e','i','o','u)开头,那么只需在这个单词结尾加上"cow".例如,"udder"需要变成"uddercow"...; 如果一个单词第一个字母不是元音字母,那么只需把这个单词第一个字母放到单词结尾,然后再在结尾加上"ow".例如 "farmer"需要变成"armerfow". ...奶牛们自信地以为这样就可以不让FJ知道他们"越狱"计划. 可惜奶牛们都不是语言学家,他们觉得这样翻译太无聊了,所以这个任务就交给你了....你需要将N (1 ≤ N ≤ 100)个英语单词翻译成牛语,单词长度在3到40之间. 输入格式: 第1行: 一个整数N. 第2行到第N+1行: 每行一个单词....输出格式: 第1行到第N行,每行一个相应牛语单词.

    84670

    C语言命名规范

    另一方面,下划线法是C出现后开始流行起来,在许多旧程序UNIX这样环境中,它使用非常普遍。匈牙利命名法。广泛应用于象Microsoft Windows这样环境中。...这样做好处在于能增加程序可读性,便于对程序理解维护。例如:m_lpszStr, 表示指向一个0字符结尾字符串长指针成员变量。...匈牙利命名法关键是:标识符名字一个或者多个小写字母开头作为前缀;前缀之后是首字母大写一个单词或多个单词组合,该单词要指明变量用途。帕斯卡(pascal)命名法。...2-命名基本原则:标识符命名要清晰、明了,有明确含义,同时使用完整单词或大家基本可以理解缩写,避免使人产生误解——尽量采用采用英文单词或全部中文全拼表示,若出现英文单词中文混合定义时,使用连字符...较短单词可通过去掉“元音”形成缩写;较长单词可取单词头几个字母形成缩写;一些单词有大家公认缩写。

    2.7K20

    20190118-利用Python实现P

    元音字母是‘a’、‘e’、‘i’、‘o’、‘u’。字母‘y’在不是第一个字母情况下,也被视作元音字母。其他字母均为辅音字母。...例如,单词“yearly”有三个元音字母(分别为‘e’、‘a’最后一个‘y’)三个辅音字母(第一个‘y’、‘r’‘l’)。 b....如果英文单词元音字母开始,则在单词末尾加入“hay”后得到“Pig Latin”对应单词。例如,“ask”变为“askhay”,“use”变为“usehay”。(同上) c....如果英文单词辅音字母开始,所有连续辅音字母一起移动到单词末尾加入“ay”后得到“Pig Latin”对应单词。...“ay” return s Step2:写一个主函数来实现输入格式输出格式转换 输入格式: 一系列单词单词之间使用空格分隔。

    51330

    Linux grep 文本搜索工具

    前言grep 是一个常用文本搜索工具,通常用于在文本文件中查找特定模式或字符串。它名字是 "global regular expression print" 缩写。...r 可以匹配 "color" "colour"。[]:字符类,用于匹配方括号内任何一个字符。例如,[aeiou] 匹配任何一个元音字母。...[^]:否定字符类,用于匹配除了方括号内字符之外任何字符。例如,[^0-9] 匹配任何非数字字符。():捕获组,用于捕获一个子表达式中匹配文本,以便后续引用。...^:匹配字符串开头(或行开头,如果使用多行模式)。例如,^abc 匹配 "abc" 开头行。$:匹配字符串结尾(或行结尾,如果使用多行模式)。例如,xyz$ 匹配 "xyz" 结尾行。...常见文本模式匹配单词:匹配单词 "apple":grep "apple" file.txt匹配 "apple" 开头单词:grep "^apple" file.txt匹配 "apple" 结尾单词

    15621

    (待整理完)正则表达式30分钟入门教程

    Regular Expression(regex、regexp或RE):记录文本规则代码 很可能你使用过Windows/Dos下用于文件查找通配符(wildcard),也就是*?。...\b是正则表达式规定一个特殊代码(好吧,某些人叫它元字符,metacharacter),代表着单词开头或结尾,也就是单词分界处。...比如下面这个例子: 0\d\d-\d\d\d\d\d\d\d\d匹配这样字符串:0开头,然后是两个数字,然后是一个连字号“-”,最后是8个数字(也就是中国电话号码。...下面来看看更多例子: \ba\w*\b匹配字母a开头单词——先是某个单词开始处(\b),然后是字母a,然后是任意数量字母或数字(\w*),最后是单词结束处(\b)。...(比如元音字母a,e,i,o,u),应该怎么办?

    64030

    软件测试|Linux三剑客之grep命令详解

    图片简介grep是一款在 Linux Unix 系统中广泛使用文本搜索工具。...grep 非常强大且灵活,可以用于日志分析、文件过滤、代码搜索等多种场景。本文将详细介绍 grep 命令基本用法一些常见选项。...,而不显示匹配行-w:只匹配整个单词,而不是部分匹配查看完整grep命令信息,可以输入man grep进行查看。...使用字符类:grep "[aeiou]" file.txt#######applebananaorangegrapeGrape该命令将匹配包含任何元音字母行。...总结grep 命令是 Linux Unix 系统中非常有用文本搜索工具。它可以根据指定模式在文本中搜索并打印匹配行,还支持正则表达式搜索,使其功能更加强大和灵活。

    26310

    2个月火爆全球Wordle被开天价,最初开发只为逗女友开心

    于是,有人便根据《简明牛津字典》总结出常见英文字母,整理出了一份适用于前两轮起始词名单: Notes → Acrid Resin → Loath Tares → Chino Senor → Ducat...我通常会从adieu这样元音字母多单词开始试,通常至少可以押中一个,有时甚至是两个。 在此基础上,我会继续尝试带有T、S、R等辅音单词,有时还会在其中加一个字母O。...那就是如果第二个字母确定为H,下一轮便可以同时试一下SC,因为这两个字母出现在H前概率非常高。 当然还有人察觉到了一个玩家们都容易忽视问题:单词字母是可以重复出现。...这种欠打的行为当然招致了玩家们联合抵抗,后来推特官方也对它做了封号处理。 不过值得一提是,有人在查看了Wordle包含2315个单词词汇库后发现,S开头E结尾词汇数量都遥遥领先。...困难模式则要求下一次猜测词汇必须S开头,且带有R;不能随便乱蒙一个毫不相干词汇来押中其他字母。

    38450

    正则表达式学习笔记

    0\d\d-\d\d\d\d\d\d\d\d匹配这样字符串:0开头,然后是两个数字,然后是一个连字号“-”,最后是8个数字(也就是中国电话号码。当然,这个例子只能匹配区号为3位情形)。...\ba\w*\b匹配字母a开头单词——先是某个单词开始处(\b),然后是字母a,然后是任意数量字母或数字(\w*),最后是单词结束处(\b)。...(或整个字符串第一个单词,具体匹配哪个意思得看选项设置) 字符类 要想查找数字,字母或数字,空白是很简单,因为已经有了对应这些字符集合元字符,但是如果你想匹配没有预定义元字符字符集合(比如元音字母...\d{5}-\d{4}|\d{5}这个表达式用于匹配美国邮政编码。美国邮编规则是5位数字,或者用连字号间隔9位数字。...]+>匹配用尖括号括起来a开头字符串。

    77470

    单表代替密码原理及算法实现

    ⑵英文单词 E,S,D,T 为结尾超过一半       ⑶英文单词 T,A,S,W 为起始字母约占一半       ⑷①在分析或攻击密文时应先找突破口,一般来说,先从the a i入手。...(两个不同字母即是re,相同即是ll)       ③其它规律:如果四字单词词末有两个相同字母,往往是ll;       a开头三字单词只能是and are中一个;       两个字母组合中如果出现...q*,则*是u(q后几乎总是u);       如果一个单词开头结尾是同一个字母,最可能是:s t d;       两个都是辅音双字母组合,常含有n或t;io、ouea是最常见元音字母组...;       如果单词头两个字母都是辅音,则第二个字母最可能是:r、lh;       如果一个三次三个辅音结尾,那最常见是-ght-tch;       反向双字母组合: er-re, es-se...:a,e,i,o,u       元音后最常见字母是n,元音前最常见字母是h       常见双字母前缀 re co un com il ir up       最常用三字母后缀 ion ing

    3.6K60

    自然语言处理起源:马尔科夫香农语言建模实验

    为什么有人会这种方式解构一部文学天才作品,而且是解构成这种无法被理解形式? 事实是,马尔科夫读这本书并不是为了学习与生活人性有关知识,他是在寻找文本中更基本数学结构。...为了确认这一点,他想证明在普希金小说这样文本中,某个字母在文本中出现几率在某种程度上是取决于之前出现字母。 因此才出现了本文开头马尔科夫统计「尤金·奥涅金」中元音那一幕。...然后马尔科夫将这 2 万个字母分成元音辅音组合:他发现有 1,104 对「元音-元音」,3,827 对「辅音-辅音」,15,069 对「元音-辅音」「辅音-元音」组合。...香农深深地被马尔科夫观点所吸引:即在给定文本中,可以估计出出现某个字母或单词可能性。...香农通过马尔可夫理念揭示了英语统计框架,并表明通过对该框架建模(通过分析字母单词相互组合出现相关概率),这些模型可以生成真正意义上语言。

    1.6K20
    领券