C#中$的用法:是为着替代string.format();原先赋值要求占位符和变量,当需求拼接多少个变量会造成语句过长等不利驾驭难点,$””是为着替代string.format(),能够把字符串中的C#变量{}包罗起来达到识别C#变量的指标$”{id}”;也支撑表达式,使用$”{(你的表达式)}”

规则运算符(?:)和 $””替代string.Format(),string.format

  1. 原则运算符(?:)依据Boolean表明式的值重返八个值之一。表明式如下:

condition ? first_expression : second_expression

 

  1. $””替代String.Format()方法,””中含有字符,有变量的急需用{}括起:

 

举例

if (bonus==false)

   return “$”+salary.ToString();

elase

  return “$”+(salary*10).ToString();

可以由如下代码替换:

return bonus ?
string.Format(“${0}”,salary*10):string.Format(“${0}”,salary);  
//String.Format()方法

 return bonus ? $”${salary*10}”:$”${salary}”; //$””

 

$替代string.Format(),string.format 1.
标准运算符(?:)依据Boolean表明式的值再次回到八个值之1。表明式如下:
condition…

一.awk的日常化表明式元字符

awk笔记

awk:
awk名来:七个姓名的缩写,他们是:Aho、(Peter)Weinberg
和(Brain)Kernighan;
行处理时方可处理行内字段,那是grep/sed搞不定的;特殊地,用$0表示正行;
用法:awk [ -F re] [parameter…] [‘prog’] [-f
progfile][in_file…]
-F 列分隔符;
prog:’pattern {action}’,pattern是一定字符串,协理正则,如cat uids |
awk ‘/[0-9]+\.[0-9]*/{print}’;
-f:符合awk语法的剧本文件;
in_file:输入文件,允许八个输入文件;???
pattern字符表示:
\ 换码系列
^ 在字符串的启幕先导相称
$ 在字符串的最终开头匹配
. 与别的单个字符串匹配
[ABC] 与[]内的任一字符相配
[A-Ca-c] 与 A-C 及 a-c 范围内的字符相称(按字母表顺序)
[^ABC] 与除[]内的全数字符以外的任一字符相称
Desk|Chair 与 Desk 和 Chair 中的任一个相配
[ABC][DEF] 关联。与 A、B、C 中的任一字符匹配,且其后要跟 D、E、F
中的任一个字符。
[ABC]* 与 A、B 或 C 中任三个面世 0 次或频繁的字符相相称
[ABC]+ 与 A、B 或 C 中其余一个冒出 一 次或频仍的字符相相称
? 与1个空荡荡或 A、B 或 C 在别的多少个字符相相称
(Blue|Black)berry 合并常规表明式,与 Blueberry 或 Blackberry 相相称
算术运算符:
x^y x 的 y 次幂
x**y 同上
x%y 计算 x/y 的余数(求模)
x+y x 加 y
x-y x 减 y
x*y x 乘 y
x/y x 除 y
-y 负 y(y 的开关符号);也称一目减
++y y 加 1 后使用 y(前置加)
y++ 使用 y 值后加 1(后缀加)、
–y y 减 1 后使用 y(前置减)
y– 使用后 y 减 1(后缀减)
x=y 将 y 的值赋给 x
x+=y 将 x+y 的值赋给 x
x-=y 将 x-y 的值赋给 x
x*=y 将 x*y 的值赋给 x
x/=y 将 x/y 的值赋给 x
x%=y 将 x%y 的值赋给 x
x^=y 将 x^y 的值赋给 x
x**=y 将 x**y 的值赋给 x
逻辑运算符:
x==y
x!=y
x>y
x>=y
x<y
规格运算符,awk常用音信总计。x<=y
x~re
x!~re
放置变量:
ABMWX三GC: 命令行参数的数码。
A福特ExplorerGIND: 命令行中当前文件的职分(从0发轫算)。
A宝马7系GV: 包罗命令行参数的数组。
CONVFMT: 数字转换格式(暗中同意值为%.6g)
ENVIRON: 环境变量关联数组。
E福特ExplorerLacrosseNO: 最终贰个系统错误的叙说。
FIELDWIDTHS: 字段宽度列表(用空格键分隔)。
FILENAME: 当前文件名。
FNHaval: 同N福特Explorer,但针锋相对于当下文件。
FS: 字段分隔符(私下认可是其他空格)。
IGNORECASE: 假若为真,则举行忽略大小写的相配。
NF: 当前记下中的字段数。
N宝马X3: 当前记录数。
OFMT: 数字的输出格式(暗中同意值是%.六g)。
OFS: 输出字段分隔符(暗中同意值是2个空格)。
O中华VSL : 输出记录分隔符(暗许值是2个换行符)。
卡宴LENGTH: 由match函数所相配的字符串的长度。
HavalS: 记录分隔符(暗中同意是贰个换行符)。
汉兰达STA本田UR-VT: 由match函数所相称的字符串的第三个地方。
SUBSEP: 数组下标分隔符(默许值是\034)
置于函数:类C风格用法;
printf:格式化输出,比如 awk ‘{printf “%03d%s\n”,NR,$1}’ myfile
N gsub(reg,string,target) 每一遍常规表明式 reg 匹配时替换 target 中的
string
N index(search,string) 重返 string 中 search 串的岗位
A length(string) 求串 string 中的字符个数
N match(string,reg) 重回常常表明式 reg 匹配的 string 中的地点
N printf(format,variable) 格式化输出,按 format 提供的格式输出变量
variable。
N split(string,store,delim) 依据分界符 delim,分解 string 为 store
的数组元素
N sprintf(format,variable) 重回1个带有基于 format
的格式化数据,variables 是要放权串中的数据
G strftime(format,timestamp) 返 回 1 个 基 于 format 的 日 期 或 者 时
间 串 ,timestmp 是 systime()函数再次来到的时间
N sub(reg,string,target) 第二遍当健康表明式 reg 相称,替换 target
串中的字符串
A substr(string,position,len) 再次回到3个以 position 开始 len
个字符的子串
P tolower(string) 重返 string 中对应的小写字符
P toupper(string) 再次回到 string 中对应的大写字符
A atan(x,y) x 的余切(弧度)
N cos(x) x 的余弦(弧度)
A exp(x) e 的 x 幂
A int(x) x 的整数部分
A log(x) x 的本来对数值
N rand() 0-一 之间的即兴数
N sin(x) x 的正弦(弧度)
A sqrt(x) x 的平方根
A srand(x) 初叶化随机数产生器。假若忽略 x,则使用 system()
G system() 再次来到自 1九柒零 年 1 月 一 日的话通过的光阴(按秒计算)
流程序控制制:
逻辑运算符:……
BEGIN/END:
if-else:
while/do-while/for/
break/continue/exit(退出但不跳过END)
next:读取下一条记下;
内容控制:
读入文件:getline
关门文件:close,能够针对getline打开的文件;
导出文件: printf(“hello word!\n”)>>”datafile”
导出到其余命令:printf(“hello word!\n”)|”sort -t’,'”
读入别的命令结果:who -u | awk ‘{printf(“%s 正在实施%s\n”,$2,$1)}’
在 awk 中实行 shell 命令行:嵌入函数
system(),该函数将传给它的参数视作命令执行:END
{close(“myreport.txt”);system(“lp myreport.txt”);}
示例:
展现文本第八~15行:awk -F % ‘NMurano==柒,N景逸SUV==一5 {printf $壹 $叁 $7}’

技巧or注意:
一 如若要让
awk所利用变量的分明性项目,应当在在程序中给它赋初值;awk不清楚时暗中同意字符串类型;
2假设读入某列是数值且做数值处理时,借使某行该列不是官方数字,则awk将其视为0处理;
金沙注册送58,三 for ( x in myarray )打字与印刷数组时,并不依据顺序,恐怕是乱序输出;
四 if (一 in fooarray),数组是或不是包蕴该值????好像不起效果啊
5

awk:
awk名来:多少个姓名的缩写,他们是:Aho、(Peter)Weinberg 和(Brain)Kernighan;
行处理时能够处理行内字段,那是grep/sed搞不定的;特殊地…

 var k = "a";  
 var a0 = "User";  
 var a1 = "Id";  
 var a2 = 5;  
 var ccc = string.Format("select * from {0} where {1} = {2}", a0, a1, a2);  
 var ccb = $"select * from {a0} where {a1}={a2}";  

 

 

\ 换码种类

自然也支撑string.format()里面包车型地铁格式,如:

^ 在字符串的开首起首相配

var k = "a";  
var k4 = $"{k,5}";  
var k3 = string.Format("{0,5}", k);  

var k2 = DateTime.Now;  
var c = $"{k2:yyyy}";  
c = string.Format("{0:yyyy}", k2);  

$ 在字符串的结尾开始相配

 

. 与其他单个字符串相配

 

[ABC] 与[]内的任一字符相配

[A-Ca-c] 与A-C及a-c范围内的字符相配(按字母表顺序)

[^ABC] 与除[]内的具备字符以外的任一字符相配

Desk|Chair 与Desk和Chair中的任1个合作

[ABC][DEF]
关联。与A、B、C中的任一字符相称,且其后要跟D、E、F中的任八个字符。

* 与A、B或C中任四个出现0次或频繁的字符相相配  www.二cto.com  

+ 与A、B或C中其余贰个产出3遍或频仍的字符相相配

? 与二个空白或A、B或C在其余二个字符相相称

(Blue|Black)berry 合并常规表明式,与Blueberry或Blackberry相相配

 

二.awk算术运算符

 

运算符 用途


x^y x的y次幂

x**y 同上

x%y 计算x/y的余数(求模)

x+y x加y

x-y x减y

x*y x乘y

x/y x除y

-y 负y(y的开关符号);也称一目减

++y y加1后使用y(前置加)

y++ 使用y值后加1(后缀加)

–y y减1后使用y(前置减)

y– 使用后y减1(后缀减)

x=y 将y的值赋给x

x+=y 将x+y的值赋给x

x-=y 将x-y的值赋给x

x*=y 将x*y的值赋给x

x/=y 将x/y的值赋给x x%=y 将x%y的值赋给x

x^=y 将x^y的值赋给x

x**=y 将x**y的值赋给x

  www.2cto.com  

三.awk同意的测试:

 

操作符 含义

 

x==y x等于y

x!=y x不等于y

x>y x大于y

x>=y x大于或等于y

x<y x小于y

x<=y x小于或等于y?

x~re x相配正则宣布式re?

x!~re x不相称正则表明式re?

 

四.awk的操作符(按优先级升序排列)

 

= 、+=、 -=、 *= 、/= 、 %=

||

&&

> >= < <= == != ~ !~

xy (字符串连结,’x”y’变成”xy”)

+ –

* / %

++ —

 

5.awk内置变量(预约义变量)

 

注解:表中v项表示第二个补助变量的工具(下同):A=awk,N=nawk,P=POSIX
awk,G=gawk

 

V 变量 含义 缺省值


N A卡宴GC 命令行参数个数

G A宝马X5GIND 当前被拍卖文件的AEscortGV标志符

N ABMWX伍GV 命令行参数数组

G CONVFMT 数字转换格式 %.陆g

P ENVIRON UNIX环境变量

N E逍客EscortNO UNIX系统错误音信

G FIELDWIDTHS 输入字段宽度的空域分隔字符串

A FILENAME 当前输入文件的名字

P FN福特Explorer 当前记录数  www.二cto.com  

A FS 输入字段分隔符 空格

G IGNORECASE 控制大小写敏感0(大小写敏感)

A NF 当前记下中的字段个数

A N福特Explorer 已经读出的记录数

A OFMT 数字的出口格式 %.陆g

A OFS 输出字段分隔符 空格

A O中华VS 输出的笔录分隔符 新行

A 本田CR-VS 输入的笔录她隔符 新行

N 奥德赛STARubiconT 被相配函数协作的字符串首

N 奥迪Q7LENGTH 被相称函数相称的字符串长度

N SUBSEP 下标分隔符 “\034”

 

陆.awk的内置函数

 

V 函数 用途或重临值


N gsub(reg,string,target) 每便常规表明式reg相配时替换target中的string

N index(search,string) 再次回到string中search串的岗位

A length(string) 求串string中的字符个数

N match(string,reg) 重回经常表明式reg相配的string中的地点

N printf(format,variable)
格式化输出,按format提供的格式输出变量variable。

N split(string,store,delim) 依据分界符delim,分解string为store的数组成分

N sprintf(format,variable)
再次回到五个涵盖基于format的格式化数据,variables是要放开串中的数据

G strftime(format,timestamp)
重回一个依照format的日期或许时间串,timestmp是systime()函数再次回到的日子

N sub(reg,string,target)
第1回当正规表达式reg相称,替换target串中的字符串

A substr(string,position,len) 重回3个以position开头len个字符的子串

P totower(string) 再次回到string中对应的小写字符

P toupper(string) 重返string中对应的大写字符

A atan(x,y) x的余切(弧度)  www.2cto.com  

N cos(x) x的余弦(弧度)

A exp(x) e的x幂

A int(x) x的平底部分

A log(x) x的本来对数值

N rand() 0-1时期的妄动数

N sin(x) x的正弦(弧度)

A sqrt(x) x的平方根

A srand(x) 早先化随机数爆发器。要是忽略x,则动用system()

G system() 再次回到自一玖6陆年七月15日的话通过的年华(按秒总计) 

 

 

 

作者 fengyv

\ 换码种类 ^
在字符串的发端伊始匹配 $ 在字符串的最终开头相配 . 与其余单个字符串相称
[ABC] 与[]内的任一字符…

相关文章

网站地图xml地图