php读取文件内容至字符串中,sed在某一行前面
分类:面向对象

复制代码 代码如下:
//输出:
aaaa,bbbb,cccc,dddd,eeee,ffff,gggg,hhhh,iiii,jjjj,kk kk,ll ll

复制代码 代码如下:

/*SQLITE的各类连接的写法*//*SQLITE只提供三个LEFTJOIN,但偶然有一些异样的境况,大家确实要用到INNEMuranoJOIN,CROSSJOIN,FULLJOIN等语句,怎么做?*//*实质上,只要转换一下,SQLITE也能够写出那些连接的.看上边包车型大巴例子:*//**//*不能够按F5一齐运转,要一段一段括起来运营,下边的GO只是个人习贯.*/GO/*概念五个测量检验表*/CREATETABLEtest1(intidintnotnull,varnamevarchar(32)notnull,PRIMARYKEY(intid));GOCREATETABLEtest2(intidintnotnull,varnamevarchar(32)notnull,varremarkvarchar(64)null,PRIMARYKEY(intid));GO/*在测验表中插入数据*/insertintotest1values(1,'aaaa1');insertintotest1values(2,'bbbb1');insertintotest1values(3,'cccc1');insertintotest2values(1,'aaaa2','2a');insertintotest2values(2,'bbbb2','2b');insertintotest2values(3,'cccc2','2c');insertintotest2values(4,'dddd2','2d');insertintotest2values(5,'eeee2','2e');insertintotest2values(6,'ffff3','2f');go/*左连接和右连接能够沟通*/selectt1.*,t2.*fromtest1ast1leftjointest2ast2ont2.[intid]=t1.intid;/*进行结果*/RecNointidvarnameintid_1varname_1varremark------------------------------------------11aaaa11aaaa22a22bbbb12bbbb22b33cccc13cccc22cgo/*也正是七个INNEWranglerJOIN*/selectt1.*,t2.*fromtest1ast1leftjointest2ast2ont2.[intid]=t1.intidwherenott2.[intid]isnull;/*执行结果*/RecNointidvarnameintid_1varname_1varremark------------------------------------------11aaaa11aaaa22a22bbbb12bbbb22b33cccc13cccc22cgo/*一定于交叉连接crossjoin*/SELECTT1.*,T2.*FROMTEST1AST1,TEST2AST2;/*进行结果*/RecNointidvarnameintid_1varname_1varremark------------------------------------------11aaaa11aaaa22a21aaaa12bbbb22b31aaaa13cccc22c41aaaa14dddd22d51aaaa15eeee22e61aaaa16ffff32f72bbbb11aaaa22a82bbbb12bbbb22b92bbbb13cccc22c102bbbb14dddd22d112bbbb15eeee22e122bbbb16ffff32f133cccc11aaaa22a143cccc12bbbb22b153cccc13cccc22c163cccc14dddd22d173cccc15eeee22e183cccc16ffff32fgo/*也正是全连接.fulljoin*/selectt1.*,t2.*fromtest1ast1leftOUTERJOINtest2ast2ont2.[intid]=t1.intidUNIONALLselectt1.*,t2.*fromtest2ast2leftjointest1ast1ont2.[intid]=t1.intidandt2.intidisnull;/*实践结果*/RecNointidvarnameintid_1varname_1varremark-------------------------------------------11aaaa11aaaa22a22bbbb12bbbb22b33cccc13cccc22c4(null)(null)1aaaa22a5(null)(null)2bbbb22b6(null)(null)3cccc22c7(null)(null)4dddd22d8(null)(null)5eeee22e9(null)(null)6ffff32f

固然知道行号能够用下边包车型大巴主意

sed -i '88 r b.file' a.file

//file.php内容:
aaaa

<?php  /*   *读取文件内容至字符串中,同临时间去除换行、行首行尾空格。   */ header("Content-type: text/html; charset=utf-8"); echo preg_replace('/((s)*(n)+(s)*)/i',',',file_get_contents('./file.php'));//End_php
//输出:
aaaa,bbbb,cccc,dddd,eeee,ffff,gggg,hhhh,iiii,jjjj,kk kk,ll ll

在a.txt的第88行插入文件b.txt

awk '1;NR==88{system("cat b.file")}'
a.file > a.file

cccc
dddd
eeee
ffff
gggg
hhhh
iiii
jjjj
kk kk
ll ll

//file.php内容:
aaaa

例如不明了行号,能够用正則相称

sed -i '/regex/ r b.txt' a.txt # regex是正则表明式
awk '/target/{system("cat b.file")}'
a.file > c.file

//file.php替换空格(x卡塔尔国、Tab(T卡塔尔效果
aaaa

cccc
dddd
eeee
ffff
gggg
hhhh
iiii
jjjj
kk kk
ll ll

sed的話假使不修改源文件,能够去掉-i开关,改革会输出到STDOUT

原文件:
[root@xiaowu shell]# cat -n file
1 aaaa
2 bbbb
3 cccc
4 dddd

目前要在第二行即“bbbb”行的底下增多一行,内容为“xiaowu”
[root@xiaowu shell]# sed '/bbbb/axiaowu' file
aaaa
bbbb
xiaowu
cccc
dddd

比如要加两行“xiaowu”能够用一下言语,注意用“n”换行
[root@xiaowu shell]# sed '/bbbb/axiaowunxiaowu' file
aaaa
bbbb
xiaowu
xiaowu
cccc
dddd

若果要在第二行即“bbbb”行的上增多一行,内容为“xiaowu”,可以把参数“a”换到“i”
[root@xiaowu shell]# sed '/b/ixiaowu' file
aaaa
xiaowu
bbbb
cccc
dddd

以上文件中独有一行相称,倘使文件中有两行依然多行相配,结果有是如何呢?

[root@xiaowu shell]# cat -n file
1 aaaa
2 bbbb
3 cccc
4 bbbb
5 dddd

[root@xiaowu shell]# sed '/bbbb/axiaowu' file
aaaa
bbbb
xiaowu
cccc
bbbb
xiaowu
dddd

由结果可以见到,每一种相称行的下一行都会被增进“xiaowu”

那就是说只要指向在其次个“bbbb”的下一行增多内容“xiaowu”,该怎么着操作呢?
能够设想先取得第一个“bbbb”行的行号,然后依照行号在那行的下一行增添“xiaowu”

收获第叁个“bbbb”行的行号的点子:
方法一:
[root@xiaowu shell]# cat -n file |grep b |awk '{print $1}'|sed -n "2"p
4
方法二:
[root@xiaowu shell]# sed -n '/bbbb/=' file |sed -n "2"p
4
由结果能够首个“bbbb”行的行号为4,然后再在第四行的前或后增添相应的剧情:
[root@xiaowu shell]# sed -e '4axiaowu' file
aaaa
bbbb
cccc
bbbb
xiaowu
dddd
[root@xiaowu shell]# sed -e '4axiaowunxiaowu' file
aaaa
bbbb
cccc
bbbb
xiaowu
xiaowu
dddd

向钦点行的末梢加多内定内容,举个例子在“ccccc”行的行尾介绍“ eeeee”

[root@xiaowu shell]# cat file
aaaaa
bbbbb
ccccc
ddddd
[root@xiaowu shell]# sed 's/cc.*/& eeeee/g' file
aaaaa
bbbbb
ccccc eeeee
ddddd

TTTT
cccc
ddddT
xxxxxxxxxxxT
eeeexxxxxxxxxx
ffff
gggg
hhhhxxxxxxxx
xxxxxxxxiiii
xxxxxxxxjjjjxxxxxxx
kkxxxkkTT
xxxxllxxllTT
Txxxxxxxxxx
TTTxx

//file.php替换空格(x卡塔尔、Tab(TState of Qatar效果
aaaa

TTTT
cccc
ddddT
xxxxxxxxxxxT
eeeexxxxxxxxxx
ffff
gggg
hhhhxxxxxxxx
xxxxxxxxiiii
xxxxxxxxjjjjxxxxxxx
kkxxxkkTT
xxxxllxxllTT
Txxxxxxxxxx
TTTxx

你只怕感兴趣的稿子:

  • PHP中去掉字符串首尾空格的格局
  • php中3种办法删除字符串中间的空格
  • PHP 将逗号、空格、回车分隔的字符串转变为数组的函数
  • php中替换字符串中的空格为逗号'',''的艺术
  • PHP中空字符串介绍0、null、empty和false之间的涉嫌
  • php中0,null,empty,空,false,字符串关系的事必躬亲介绍
  • PHP中用正则表明式撤除字符串的空域
  • PHP驱除数组中全数字符串两端空格的不二诀窍
  • php下清空字符串中的HTML标签的代码
  • 详细解释php中空字符串和0之间的关系

本文由10bet手机官网发布于面向对象,转载请注明出处:php读取文件内容至字符串中,sed在某一行前面

上一篇:能继续执行的php函数,函数之计划任务实现方法 下一篇:php中3des加密代码,net中des加解密的实现方法
猜你喜欢
热门排行
精彩图文