windowsperl?perl的命名规范
一、perl的命名规范
在Perl中,常见的命名规范如下:1.变量和子程序的命名一般采用小写字母和下划线的组合,例如$count,$name_list,subhello_world{}。2.类名一般以大写字母开头的驼峰命名法,例如MyClass,MyModule。3.全局常量一般使用全大写字母和下划线的组合,例如MY_CONSTANT。4.非全局的常量命名与变量命名类似,采用小写字母和下划线的组合,例如$max_value。5.所有标识符的命名原则是要清晰、具有代表性并且易于理解。使用有意义的名称来描述变量、函数、类等的用途。6.避免使用简单的单个字符或无意义的名称。7.遵循约定俗成的命名规范,如在循环中使用$i,$j,$k作为索引变量,$str作为字符串变量等。8.在采用多个单词组成的标识符时,可以使用下划线或驼峰命名法。例如$last_name或$lastName。9.尽量避免使用Perl保留关键字作为标识符的名称。总的来说,在Perl中的命名规范是灵活的,但建议在命名时保持一致性、清晰性和可读性。
二、windows中比较强的脚本语言有哪些
脚本语言:脚本语言又被称为扩建的语言,或者动态语言,是一种编程语言,用来控制软件应用程序,脚本通常以文本(如ASCII)保存,只在被调用时进行解释或编译。
语言分类:
1.
Shell脚本:此类脚本用于自动化工作控制,即启动和控制系统程序的行为。大多的脚本语言解释器也同时是命令行界面,如Unixshell和MS-DOSCOMMAND.COM。其他如AppleScript,可以为系统增加脚本环境,但没有命令行界面。具体分类有:
4NT
AppleScript
ARexx(AmigaRexx)
bash
csh
DCL
JCL
ksh
Cmd.exebatch(Windows,OS/2)
Command.combatch(DOS)
REXX
tcsh
sh
Winbatch
WindowsPowerShell
WindowsScriptHost
zsh
2.
GUI脚本:GUI出现带来一种专业的控制计算机的脚本语言。它在用户和图形界面,菜单,按钮等之间互动。它经常用来自动化重复性动作,或设置一个标准状态。理论上它可以用来控制运行于基于GUI的计算机上的所有应用程序,但实际上这些语言是否被支持还要看应用程序和操作系统本身。当通过键盘进行互动时,这些语言也被称为宏语言。
具体分类有:
AutoHotkey
AutoIt
Expect
3.
应用程序定制:许多大型的应用程序都包括根据用户需求而定制的惯用脚本语言。同样地,许多电脑游戏系统使用一种自定义脚本语言来表现NPC(non-playercharacter,non-playablecharacter,non-playerclass)和游戏环境的预编程动作。此类语言通常是为一个单独的应用程序所设计,虽然它们貌似一些通用语言(如QuakeC,modeledafterC),但它们有自定义的功能。具体分类:
ActionCodeScript
ActionScript
AutoLISP
BlobbieScript
EmacsLisp
GameMakerLanguage
HyperTalk
IPTSCRAE
IRCscript
Lingo
MayaEmbeddedLanguage
mIRCscript
NWscript
QuakeC
UnrealScript
VisualBasicforApplications
VBScript
ZZT-oop
4.
web编程脚本:应用程序定制的脚本语言中有一种重要的类别,用于提供WEB页面的自定义功能。它专业处理互联网通信,使用网页浏览器作为用户界面。当然,大多现代WEB编程语言都比较强大可以做一些通用编程。具体分类:
ColdFusion(ApplicationServer)
Lasso
Miva
SMX
IPTSCRAE-一些网络开发团队用于创建论坛的工具
5.
文本处理语言:处理基于文本的记录是脚本语言最早的用处之一。如Unix'sawk最早是设计来帮助系统管理员处理调用UNIX基于文本的配置和LOG文件。PERL最早是用来产生报告的,现在它已经成了全面成熟的语言。
具体分类:
Awk
Perl
sed
XSLT
6.
通用动态语言:一些语言,比如Perl,从一门脚本语言发展成了更通用的编程语言。由于“解释执行,内存管理,动态”等特性,它们仍被称为脚本语言。但它们已经用于应用程序编写,用户也不把它们看作脚本语言。
APL
Dao
Dylan
Groovy
Lua
MUMPS(M)
newLISP
Nuva
Perl
PHP
Python
Ruby
Scheme
Smalltalk
SuperCard
Tcl(Toolcommandlanguage)
7.
程序语言:少数的语言被设计通过嵌入应用程序来取代应用程序定制的脚本语言。开发者(如使用C等其它系统语言)包入使脚本语言可以控制应用程序的hook。这些语言和应用程序定制的脚本语言是同种用途,但优点在于可以在应用程序之间传递一些技能。
具体分类:
Ch(C/C++interpreter)
Dao
ECMAScript亦称DMDScript,JavaScript,JScript
GameMonkeyScript
Guile
ICI
Lua
RBScript(REALbasicScript)
Squirrel
Tcl
Z-Script
8.
JavaScript直到现在仍然是网页浏览器内的主要编程语言,它的ECMAScript标准化保证了它成为流行的通用嵌入性语言。Tcl作为一种扩展性语言而创建,但更多地被用作通用性语言,就如同Python,Perl,Ruby一样。Q语言是在VBScript的基础上发展起来,专用于按键精灵系列产品,成为一门更接近“汉语”习惯的脚本语言。
BeanShell(scriptingforJava)
CobolScript
Escapade(serversidescripting)
Euphoria
F-Script
Ferite
Groovy
Gui4Cli
Io
KiXtart
Mondrian
ObjectREXX
Pike
Pliant
REBOL
ScriptBasic
ShorthandLanguage
Simkin
Sleep
StepTalk
VisualDialogScript
三、perl正则语法(:的含义
(pattern)
匹配pattern并获取这一匹配。所获取的匹配可以从产生的Matches集合得到,在VBScript中使用SubMatches集合,在JScript中则使用$0…$9属性。要匹配圆括号字符,请使用‘\(’或‘\)’。
(?:pattern)
匹配pattern但不获取匹配结果,也就是说这是一个非获取匹配,不进行存储供以后使用。这在使用“或”字符(|)来组合一个模式的各个部分是很有用。例如,‘industr(?:y|ies)就是一个比‘industry|industries’更简略的表达式。
(?=pattern)
正向预查,在任何匹配pattern的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。例如,‘Windows(?=95|98|NT|2000)’能匹配“Windows2000〃中的“Windows”,但不能匹配“Windows3.1〃中的“Windows”。预查不消耗字符,也就是说,在一个匹配发生后,在最后一次匹配之后立即开始下一次匹配的搜索,而不是从包含预查的字符之后开始。
(?!pattern)
负向预查,在任何不匹配pattern的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。例如‘Windows(?!95|98|NT|2000)’能匹配“Windows3.1〃中的“Windows”,但不能匹配“Windows2000〃中的“Windows”。预查不消耗字符,也就是说,在一个匹配发生后,在最后一次匹配之后立即开始下一次匹配的搜索,而不是从包含预查的字符之后开始
在PERL的模式中,括号内的子模式将存贮在内存中,此功能即取消存贮该括号内的匹配内容,如/(?:a|b|c)(d|e)f\1/中的\1表示已匹配的d或e,而不是a或b或c