问题

一个多行字符串,"asfdb;\nwesfpjoing;\nwbfliqwbefpwqufn\nasfdwe\nsafewt\nqwern\nvar\ntgwtg\n\nftwg\n"

现在要在"qwern"这一行后插入一行“xxxyyy”,如何做?

思路

将该字符串以\n切分变为字符串数组。遍历该数组,如果某一行字符串中包含关键字,则在后面插入xxxyyy

python

str = "asfdb;\nwesfpjoing;\nwbfliqwbefpwqufn\nasfdwe\nsafewt\nqwern\nvar\ntgwtg\n\nftwg\n"

lines = str.split('\n')
lines.reverse()
newstr = ''
for line in lines:
#print(line)
if "safewt" in line:
line = line + '\n' + "xxxxyyyy"
newstr = line +'\n' + newstr #倒序的
print(newstr) lines = str.split('\n')

python使用split后字符串列表的顺序是反的,需要再一次倒序该列表。

有以下几种方法:

1、reversed(a), 生成了a的迭代器, for line in reversed(a)即可

也可以将该迭代器转换为list类型:

b = reversed(a)
list(b)

2.a[::-1],该方法将a倒序切片, 得到一个新的list, for b in s[::-1]

3.a.reverse() 将a本身倒过来

4、使用range,range(4,-1,-1)表示[4,-1)左开右闭区间,由于-1是开区间,所以实际上是[4,0],

最后面的-1是每次的步进距离。 从位置4到1的区间,每次移动-1距离。左边是开始位置,而右边是结束位置。

for i in range(len(a)-1,-1,-1):
a[i]

javascript

js中同样使用split()切分,但是产生的数组不会倒序。

判断是否有子串存在的方法是indexOf(), 如果匹配失败,返回-1,匹配成功,返回第一次匹配到的初始位置。lastindexOf()则是最后一次匹配到的位置。

var qs = require('querystring');

var str = 'asfdb;\nwesfpjoing;\nwbfliqwbefpwqufn\nasfdwe\nsafewt\nqwern\nvar\ntgwtg\n\nftwg\n';

/*
for(line in str){
console.log(line)
}
*/
strlist = str.split('\n');
newstr='';
for(i =0;i < strlist.length;++i)
{
//console.log(strlist[i]);
if(strlist[i].indexOf("wern") != -1){
strlist[i] += "\nxxxxxyyyyy";
}
newstr = newstr + strlist[i] + '\n';
} console.log(newstr);

python和js分别在多行字符串中插入一行字符串的更多相关文章

  1. String的两个API,判断指定字符串是否包含另一字符串,在字符串中删除指定字符串。

    // 在字符串中删除指定字符串. String phoneNum="1795112345"; phoneNum = phoneNum.replace("17951&quo ...

  2. C++ 在字符串中插入子串+推断字符串是否由空格组成

    // Example3.cpp : 定义控制台应用程序的入口点. #include "StdAfx.h" #include <string> #include < ...

  3. String 类中的几个练习--获取指定字符串中,大写字母、小写字母、数字的个数||获取一个字符串中,另一个字符串出现的次数

    package cn.homework.demo1; public class GetCount { /* * 获取一个字符串中,另一个字符串出现的次数 * 思想: * 1. indexOf到字符串中 ...

  4. Java 获取一个字符串中,另一个字符串出现的次数

    Java 获取一个字符串中,另一个字符串出现的次数 思想: 1. indexOf到字符串中到第一次出现的索引2. 找到的索引+被找字符串长度,截取字符串3. 计数器++ 代码实现: public cl ...

  5. bat 判断变量字符串中是否包含字符串

    bat 判断变量字符串中是否包含字符串 @echo off rem way 1 set str=machine-order-service set matchStr=orderd echo %str% ...

  6. python,如何获取字符串中的子字符串,部分字符串

    说明: 比如有一个字符串,python,如何就获取前3位,或者后2位.在此记录下. 操作过程: 1.通过分割符的方式,下标的方式,获取字符串中的子串 >>> text = 'pyth ...

  7. js实现截取或查找字符串中的子字符串

    获取 答案: var string0="sss.sscdyfasdfdgfg";//sscdy获取 ,); 答案是采用substr方法. 定义和用法:substr方法用于返回一个从 ...

  8. python之字符串中插入变量

    方法一:也是 比较好用的,功能教齐全 s="{name} is {sex}" print(s.format(name="zzy",sex="girl& ...

  9. php基础10:字符串中插入变量

    <?php //插入字符串 //1.双引号可以解析字符串中的变量:但是前后不能跟中文符号 $username = "gaoxiong"; echo "my name ...

随机推荐

  1. UDP实现在线聊天功能

    发送端 //发送 public class UDPChat01 { public static void main(String[] args) throws Exception { //开启端口 D ...

  2. Springboot_Email注解爆红

    应该是更新后的版本,不会自动导入pom依赖 <!--新版本需要validation启动器 --> <dependency> <groupId>org.springf ...

  3. vue 接入 vod-js-sdk-v6.js 完成视频上传

    东西有点多,耐心看完.按照操作一步一步来,绝对能成功 首先:npm 引入 npm install vod-js-sdk-v6 mian.js  全局引入  //腾讯云点播 import TcVod f ...

  4. 从kratos分析breaker熔断器源码实现

    为什么要用熔断 前面我们讲过限流保证服务的可用性,不被突如其来的流量打爆.但是两种情况是限流解决不了的. 如果我们服务只能处理1000QPS,但是有10wQPS打过来,服务还是会炸.因为拒绝请求也需要 ...

  5. thinkphp5.x在函数禁用的情况下绕过

    描述 测试的时候发现一个thinkphp的网站,有tp5的漏洞但无法执行命令,但没机会进行后续测试,所有在这里自己搭建环境进行复现一下. 使用的是tp5.0.16 一开始使用网上的payload打一直 ...

  6. 剑指 Offer 34. 二叉树中和为某一值的路径

    剑指 Offer 34. 二叉树中和为某一值的路径 输入一棵二叉树和一个整数,打印出二叉树中节点值的和为输入整数的所有路径.从树的根节点开始往下一直到叶节点所经过的节点形成一条路径. 示例: 给定如下 ...

  7. 即时通讯网-TCPIP族关系图

  8. Identity用户管理入门二(显示用户列表)

    在Controllers中新建AccountController,并在构造方法(函数)中注入SignInManager,UserManager UserManager   用户管理(注册,查找,修改, ...

  9. Request请求对象

    一.Request对象由服务器创建,我们使用 浏览器访问服务器资源原理: 二.Request体系结构 其中,servlet 的service()方法参数列表是 servletRequest对象, Ht ...

  10. 下载excel(接收文件流)

    /**  * 文件流转换 主要代码块,可自定义下载文件名称  * @param {} data  */ export function download(data, titName) {   if ( ...