python和js分别在多行字符串中插入一行字符串
问题
一个多行字符串,"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分别在多行字符串中插入一行字符串的更多相关文章
- String的两个API,判断指定字符串是否包含另一字符串,在字符串中删除指定字符串。
// 在字符串中删除指定字符串. String phoneNum="1795112345"; phoneNum = phoneNum.replace("17951&quo ...
- C++ 在字符串中插入子串+推断字符串是否由空格组成
// Example3.cpp : 定义控制台应用程序的入口点. #include "StdAfx.h" #include <string> #include < ...
- String 类中的几个练习--获取指定字符串中,大写字母、小写字母、数字的个数||获取一个字符串中,另一个字符串出现的次数
package cn.homework.demo1; public class GetCount { /* * 获取一个字符串中,另一个字符串出现的次数 * 思想: * 1. indexOf到字符串中 ...
- Java 获取一个字符串中,另一个字符串出现的次数
Java 获取一个字符串中,另一个字符串出现的次数 思想: 1. indexOf到字符串中到第一次出现的索引2. 找到的索引+被找字符串长度,截取字符串3. 计数器++ 代码实现: public cl ...
- bat 判断变量字符串中是否包含字符串
bat 判断变量字符串中是否包含字符串 @echo off rem way 1 set str=machine-order-service set matchStr=orderd echo %str% ...
- python,如何获取字符串中的子字符串,部分字符串
说明: 比如有一个字符串,python,如何就获取前3位,或者后2位.在此记录下. 操作过程: 1.通过分割符的方式,下标的方式,获取字符串中的子串 >>> text = 'pyth ...
- js实现截取或查找字符串中的子字符串
获取 答案: var string0="sss.sscdyfasdfdgfg";//sscdy获取 ,); 答案是采用substr方法. 定义和用法:substr方法用于返回一个从 ...
- python之字符串中插入变量
方法一:也是 比较好用的,功能教齐全 s="{name} is {sex}" print(s.format(name="zzy",sex="girl& ...
- php基础10:字符串中插入变量
<?php //插入字符串 //1.双引号可以解析字符串中的变量:但是前后不能跟中文符号 $username = "gaoxiong"; echo "my name ...
随机推荐
- AFL++ Fuzz一个libexif例子
CVE-2009-3895 首先在NVD找到漏洞描述如下: 大致意思是说:libexif 0.6.18 中的 libexif/exif-entry.c 中的 exif_entry_fix 函数中基于堆 ...
- 性能测试必备命令(4)- pstree
性能测试必备的 Linux 命令系列,可以看下面链接的文章哦 https://www.cnblogs.com/poloyy/category/1819490.html 介绍 显示进程树 语法格式 ps ...
- linux 性能统计命令
命令1 性能压力测试,yes持续输出30s到设备中空文件,然后杀掉进程 { yes> /dev/null & } && sleep 30 && ps -e ...
- 《微服务架构设计模式》读书笔记 | 第8章 外部API模式
目录 前言 1. 外部API的设计难题 1.1 FTGO应用程序的服务及客户端 1.2 FTGO移动客户端API的设计难题 1.3 其他类型客户端API的设计难题与特点 2. API Gateway模 ...
- Java基础之代理模式
代理模式是常见的设计模式之一,意图在为指定对象提供一种代理以控制对这个对象的访问.Java中的代理分为动态代理和静态代理,动态代理在Java中的应用比较广泛,比如Spring的AOP实现.远程RPC调 ...
- Android仿QQ空间发表动态
效果展示图: 功能描述:用户点击+会进入发表动态的界面,发表成功后跳转到个人首页. 后续完善:增加个人头像的上传,对界面进行优化,增加点赞和评论的功能. 主要采用listview对内容进行展示,对sq ...
- c++ undefined reference
记录一次c++编程时发现的问题 报错 undefined reference undefined reference to `Student::~Student()' 下面还有类似的好几行,翻译过来就 ...
- mysql操作中卡死 解决方法
1.使用指令查询当前进程 show full processlist; -- 查询全部当前进程; show processlist;-- 只列出前100条 2.找出卡死的进程id 3.删除卡死进程 k ...
- P7597 「EZEC-8」猜树 加强版
#include<bits/stdc++.h>using namespace std;#define rg register#define inf 0x3f3f3f3f#define ll ...
- SQL-关联查询【转】
T_A A表 T_B B标,id为表与表相关联的字段`创建相关表结构 CREATE TABLE Table_B( id INT(2), serNum VARCHAR(10) ); CREATE TAB ...