精华内容
下载资源
问答
  • 2021-05-10 19:04:38

    说我有一些任意的多行文本文件:

    sometext

    moretext

    lastline

    如何在不使文本文件无效的情况下仅删除文件的最后一个字符(e,而不是换行符或null)?

    解决方法:

    一种更简单的方法(输出到stdout,不更新输入文件):

    sed '$s/.$//' somefile

    > $是仅与最后一行输入行匹配的Sed地址,因此导致以下函数调用(s /.$//)仅在最后一行执行.

    > s /.$//用空字符串替换(在本例中为last)行的最后一个字符;即,有效地删除最后一个字符. (换行前)上线.

    .匹配该行上的任何字符,并使用$anchors将其匹配到该行的末尾;注意这个正则表达式中$的使用在概念上是如何相关的,但在技术上与以前使用$作为Sed地址有所区别.

    > stdin输入示例(假设Bash,Ksh或Zsh):

    $sed '$s/.$//' <<< $'line one\nline two'

    line one

    line tw

    要更新输入文件(如果输入文件是符号链接,请不要使用):

    sed -i '$s/.$//' somefile

    注意:

    *在OSX上,您必须使用-i”而不仅仅是-i;有关与-i相关的陷阱的概述,请参见my answer here的下半部分.

    *如果您需要处理非常大的输入文件和/或性能/磁盘使用是一个问题,并且您正在使用GNU实用程序(Linux),请参阅sorontar’s helpful answer.

    标签:bash,linux,sed,unix

    来源: https://codeday.me/bug/20190923/1815365.html

    更多相关内容
  • 请编写一个函数删除一个字符串的一部分。函数的原型如下: int del_substr(char *str, char const *substr); 函数首先应该判断substr是否出现在str中,如果它并未出现,函数就返回0;如果出现,函数应该把str中...

    题目要求:
    请编写一个函数,删除一个字符串的一部分。函数的原型如下:
    int del_substr(char *str, char const *substr);
    函数首先应该判断substr是否出现在str中,如果它并未出现,函数就返回0;如果出现,函数应该把str中位于该子串后面的所有字符复制到该子串的位置,从而删除这个子串,然后函数返回1。如果substr多次出现在str中,函数只删除第一次出现的子串。函数的第2个参数绝不会被修改。

    代码如下:
    方法一:

    int del_substr(char *str, char const *substr)
    {
        int flag = 0;   //判断是否相等
        char *stringStr = str;
        char *stringResult  = NULL;
        char const *stringSubstr = substr;
    
        while (*stringStr != '\0')
        {
            if (*stringStr == *stringSubstr)
            {
                flag++;
                stringResult = stringStr;
                *stringStr++;
                *stringSubstr++;
            }
            else
            {
                stringStr++;
                stringSubstr = substr;
            }
    
            if (*(stringSubstr) == '\0')
            {
                while (*stringResult)
                {
    
                    *(stringResult - flag) = *(++stringResult);
                }
                return 1;
            }
        }   
        return 0;
    }

    测试代码:

    #include <stdio.h>
    int main()
    {
        char s1[] = "ABCDEF";
        char s2[] = "BC";
        int p = 0;
        p = del_substr(s1, s2);
        printf("%d\n%s\n", p,s1);
    
        return 0;
    }

    方法二:

    int del_substr(char *str, char const *substr)
    {
        char *stringStr = NULL;
        char *stringResult = NULL;
        char const *stringSubstr = NULL;
        int flag = 0;
        int flagTrue = 0;//判断是否相等过
        if (str == NULL || substr == NULL)
        {
            return 0;
        }
        stringStr = str;
        stringSubstr = substr;
        while (*stringStr != '\0')
        {
            while (*stringSubstr != '\0')
            {
                if (*stringStr == *stringSubstr)
                {
                    stringResult = stringStr;
                    flag++;
                    flagTrue = 1;
                    *stringStr++;
                    *stringSubstr++;
                    continue;
                }
                else
                {
                    flag = 0;
                    break;
                }
            }
    
            if (*(stringSubstr) == '\0')
            {
                while (*stringResult)
                {
    
                    *(stringResult - flag) = *(++stringResult);
                }
                return 1;
            }
    
            if (flagTrue == 1)
            {
                break;
            }
            else
            {
                stringStr++;
            }
        }
        return flag;
    }

    测试代码:

    #include <stdio.h>
    
    int main()
    {
        char s1[] = "ABCDEF";
        char s2[] = "BC";
        int p;
        p = del_substr(s1, s2);
        printf("%d\n%s\n", p, s1);
    
        return 0;
    }

    输出结果:

    1
    ADEF

    结束!

    展开全文
  • 字符串的处理中,有时需要对字符串的最后一个字母进行截取判断或进行删除的操作。那么在 php 编程语言中,截取字符串的最后一个字母,以及删除字符最后一个字母的方法是怎样的呢?php 截取字符最后一个字符的...

    在字符串的处理中,有时需要对字符串的最后一个字母进行截取判断或进行删除的操作。那么在 php 编程语言中,截取字符串的最后一个字母,以及删除字符串最后一个字母的方法是怎样的呢?

    php 截取字符串最后一个字符的方法

    1、使用 substr() 函数,截取字符串的最后一位

    php代码:<?php

    //声明页面的编码类型

    header("Content-type: text/html; charset=utf-8");

    echo substr("http://www.feiniaomy.com/", -1);

    // 返回结果: /

    echo mb_substr("飞鸟慕鱼博客", -1);

    // 返回结果:客

    ?>

    说明:

    (1)、substr(),对中文字符串兼容性不好

    (2)、mb_substr(),可以处理中文字符串

    (3)、关于 substr() 函数使用,参考:https://www.feiniaomy.com/post/254.html

    2、使用 strlen() 函数获取字符串的最后一个字符<?php

    $str = "www.baidu.com";

    $len = strlen($str)-1;

    echo $str{$len};

    ?>

    运行输出结果:m

    php 删除字符串最后一个字符的方法

    1、substr_replace() 函数删除字符串最后一个字符

    php代码:<?php

    $str = "www.baidu.com/";

    echo substr_replace($str ,"",-1);

    ?>

    输出结果:www.baidu.com

    2、使用 substr() 与 mb_substr() 函数<?php

    $str = "feiniaomy.com/";

    echo substr($str, 0, -1);

    $str = '飞鸟慕鱼博客站';

    echo mb_substr($str,0,-1);

    ?>

    运行结果:feiniaomy.com

    飞鸟慕鱼博客

    3、使用 rtrim() 函数删除字符串最后的字符

    php代码:<?php

    $str = "abcdefd";

    echo rtrim($str,'d');

    ?>

    运行结果:abcdef

    展开全文
  • 1)利用SUBSTITUTE将分隔符替换成空字符 2)利用LEN - LEN(SUBSTITUTE) 即可获取里面被替换掉了多少个分隔符 3)使用SUBSTITUTE将最后一个分隔...5)利用RIGHT或LEFT函数即可截取最后一个分隔符右边或左边的字符串内容
  • 需求:去掉js字符串末尾的标点符号原字符串:Hello World!目标字符串:Hello World...也就是说,-1 指字符串的最后一个字符end:要抽取的片段的结尾的下标。若未指定此参数,则要提取的子串包括 start 到原字符串结尾...

    需求:去掉js字符串末尾的标点符号

    原字符串:

    Hello World!

    目标字符串:

    Hello World

    方式一:

    stringObject.slice(start,end)

    start : 要抽取的片断的起始下标。如果是负数,则该参数规定的是从字符串的尾部开始算起的位置。也就是说,-1 指字符串的最后一个字符

    end:要抽取的片段的结尾的下标。若未指定此参数,则要提取的子串包括 start 到原字符串结尾的字符串。如果该参数是负数,那么它规定的是从字符串的尾部开始算起的位置

    var str = 'Hello World!';

    document.write(str.slice(0,str.length-1)); //输出 Hello World

    方式二:

    stringObject.substr(start,length)

    start : 必需。要抽取的子串的起始下标。必须是数值。如果是负数,那么该参数声明从字符串的尾部开始算起的位置。也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推。

    length : 可选。子串中的字符数。必须是数值。如果省略了该参数,那么返回从 stringObject 的开始位置到结尾的字串。

    var str = 'Hello World!';

    document.write(str.substr(0,str.length-1)); //输出 Hello World

    方式三:

    stringObject.substring(start,stop)

    与 slice() 和 substr() 方法不同的是,substring() 不接受负的参数

    start : 必需。一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置

    stop : 可选。一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1。

    如果省略该参数,那么返回的子串会一直到字符串的结尾。

    var str = 'Hello World!';

    document.write(str.substr(0,str.length)); //输出 Hello World

    下面看下JS 删除字符串最后一个字符的几种方法

    字符串:string s = "1,2,3,4,5,"

    1、用的最多的是Substring

    JS 删除字符串最后一个字符的几种方法 - li_crane - 未来之路(The road ahead)s=s.Substring(0,s.Length-1)

    2、用 RTrim,原来只用来删除最后的空格,也没有仔细看过其它的用法,才发现可以直接trim掉一些字符

    JS 删除字符串最后一个字符的几种方法 - li_crane - 未来之路(The road ahead)s=s.ToString().RTrim(',')

    扩展 删除空格

    function trim(str){ //删除左右两端的空格

    return str.replace(/(^\s*)|(\s*$)/g, "");

    }

    function ltrim(str){ //删除左边的空格

    return str.replace(/(^\s*)/g,"");

    }

    function rtrim(str){ //删除右边的空格

    return str.replace(/(\s*$)/g,"");

    }

    3、用TrimEnd,这个东西和RTrim差不多,区别是这个传递的是一个字符数组,而RTrim可以是任何有效的字符串

    JS 删除字符串最后一个字符的几种方法 - li_crane - 未来之路(The road ahead)s=s.TrimEnd(',')

    JS 删除字符串最后一个字符的几种方法 - li_crane - 未来之路(The road ahead)//如果要删除"5,",则需要这么写

    JS 删除字符串最后一个字符的几种方法 - li_crane - 未来之路(The road ahead)char[]MyChar={'5',','};

    JS 删除字符串最后一个字符的几种方法 - li_crane - 未来之路(The road ahead)s=s.TrimEnd(MyChar);

    JS 删除字符串最后一个字符的几种方法 - li_crane - 未来之路(The road ahead)//s="1,2,3,4"

    类似函数:

    TrimStart,LTrim等

    还有一个TrimToSize对提高性能有微弱的好处....

    string.TrimEnd().Remove(string.Length - 2, 1)

    string.Remove()

    总结

    以上所述是小编给大家介绍的JS去掉字符串末尾的标点符号及删除最后一个字符的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

    展开全文
  • C语言:编写一个函数删除字符串中指定位置上的字符,若删除成功,返还被删除字符串,否则返还空值。 #include <stdio.h> //删除字符串的第几个元素 int delet(char*a,int n){ //删除字符串a的第n的字符。...
  • C++删除字符最后一位方法

    千次阅读 2019-04-17 11:27:31
    //方法:使用substr() str = str.substr(0, str.length() - 1); cout ; return 0; } 2.使用erase实现 代码如下: #include #include using namespace std; int main() { string str; str...
  • 【Excel函数删除最后一个

    千次阅读 2018-11-13 19:48:15
    业务需求,需要将数字最后一个0删除,因为数字长度不统一,需要用到判断,稍微麻烦点,具体如图所示。
  • excel 除掉最后一个字

    2022-01-28 17:32:46
    有一列数据,需要删除最后一个字符; 在B1单元格输入函数“=LEFT(A1,LEN(A1)-1)”;
  • java删除字符串中最后一个字符

    千次阅读 2020-09-07 10:07:03
    形如a,b,c,d,e,f,删除最后一个逗号 或是helloworld!删除最后一个感叹号 方法:使用str.substring String str = "a,b,c,d,e,f,"; str = str.substring(0,str.length()-1); 简单介绍一下substring用法: str....
  • python 获取字符最后一个字符

    万次阅读 2020-11-30 11:07:10
    因为序列类型是元素被顺序放置的一种数据结构,因此可以通过索引来获取某一个字符,或者指定索引范围来获取一...st=asdfgprint(st)gfds字符串分片的索引,索引的起始位置i,索引结束位置j,和步长k均可以省略,省略i...
  • 去掉字符串中的最后一个字符

    千次阅读 2021-01-16 14:27:31
    去掉字符串中的最后一个字符字符串1,2,3,4,5,6,去掉最后一个字符",",最终结果为1,2,3,4,5,6代码如下:$str = "1,2,3,4,5,6,";$newstr = substr($str,0,strlen($str)-1);echo $newstr;系统自带的函数也可实现这样...
  • 目标:删除最后一个 ","方法:1、用的最多的是Substring,这个也是我一直用的s=s.Substring(0,s.Length-1)2、用 RTrim,这个我原来只知道用来删除最后的空格,也没有仔细看过其它的用法,才发现可以直接...
  • 深度学习数据集转换操做遇到一些繁琐替换,写了几个函数方便批处理。 #include <QCoreApplication> #include <QFileInfo> #include <QFileInfoList> #include <QDir> #include <QFile&...
  • 例题:请编写一个函数,用来删除字符串中的所有空格。 例如,输入we l come,则输出为welcome。 请勿改动主函数main与其它函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 代码如下: #include<...
  • //删除最后一个字符串 this.allId = this.allId.substring(0,this.allId.length - 1); //删除前四个字符串 this.allId = this.allId.slice(4); 数据是这样的,需要把前面的(all,)和最后的(,)删掉 结果 ...
  • Oracle刪除字符串中最后一个字符

    千次阅读 2021-06-17 18:08:01
    根據substr函數,如果想要刪除最後一個或幾個字符, 根據下面sql進行聯想 select substr(string, 0, length(string)-1) from dual; 下面例子將1.A001_2.A002_3.A003_刪除最後的_符號. 看上去有些笨, 如果寫在函數裡...
  • 目标:删除最后一个 ","  方法:   1、用的最多的是Substring,这个也是我一直用的 s = s.Substring(0,s.Length - 1)  2、用 RTrim,这个我原来只知道用来删除最后的空格,也没有仔细看过其它的...
  • chomp与chop都是用于去除字符串变量尾部的字符,但它们有各自的区别。chomp函数对变量起作用,而此变量含有字符串。如果字符串结尾有换行符,...它非常有用,基本上你的每一个程序都会用到它。如你将知道,这是将...
  • 满意答案qkqxx72013.05.02采纳率:48%等级:12已帮助:7078人#include #include void del_str(char a[ ],char b[ ],int n){int j = 0;...= n) //若i不等于要删除位置的下标,则将b中i位置的字符复制到a中a[j++] =...
  • java-删除字符串的最后个字符

    千次阅读 2021-02-26 11:08:32
    java-删除字符串的最后两个字符这个问题已经在这里有了答案:如何从字符串中删除最后一个字符? 29个答案如何删除简单字符串的后两个字符05?简单:"apple car 05"码String[] lineSplitted = line.split(":");String...
  • java中删除StringBuffer最后一个字段

    千次阅读 2019-02-22 10:37:56
    在编写代码时遇见字符串拼接,当拼接完成后最后一个字符需要删除的场景。 写的为拼接sql功能,最后一个","需要去除否则sql报错。代码如下: sql.append(" select id companyId, name companyName &...
  • StringBuffer去掉最后一个字符

    万次阅读 2018-03-16 11:46:12
    那么如何去掉最后一个“|”呢?很简单 public class stringBuffer { public static void main (String[] args) { String stringArray[]; stringArray = new String[] { "0" , "1" , "2" };...
  • PHP删除字符最后一个字符

    千次阅读 2017-08-20 15:48:37
    通常在存多有效值的时候(如:关键字,标签等),需要对存储的值进行分隔符处理,这样处理后通常会在字符串的首端或末端多一分隔符,这是就需要对字符串进行处理删除首端或末端的分隔符。 方法: rtrim — ...
  • 删除字符串最后一个字符的几种方法 删除字符串最后一个字符的几种方法 ...目标:删除最后一个 ","  方法:   1、用的最多的是Substring,这个也是我一直用的    s = s.Substring(0,s.Length - 1)
  • 编程题:编写函数delSpace实现删除字符串中全部指定的字符。 例如:删除字串"abaaacad"中所有的字符’a’,则结果为:“bcd”。 要求:删除功能用函数实现,且所有数据通过参数传递。 解决方法 #include <stdio...
  • 一个字符串,内有若干个字符,今输入一个字符,要求程序将字符串中该字符删去,用外部函数实现。 解题思路: 1、分别定义3个函数用来输入字符串、删除字符、输出字符串 2、按题目要求把以上3个函数分别放在3个...
  • 形参h已指向字符串第一个字母,形参p已指向字符串中最后一个字母。在编写程序时,不得使用c语言提供的字符函数。 比如:**che*n*yu** 最后输出**chenyu** 2 、温馨提示 C语言试题...
  • C语言——字符串里删除字符函数

    万次阅读 2017-08-31 15:14:37
    前言:对于一个刚接触C语言的人来说,写个简单的字符串操作函数简直是要了我的命,刚开始看网上的大神写的代码的时候觉得很简单,自己想了一会之后觉得自己动手写肯定是没问题,可是当我自己写的时候(在不看他们...
  • 形参p已指向字符串中最后一个字母。在编写函数时,不得使用C语言提供的字符函数。 例如,字符串中的内容为ABCDEFG*******,删除后,字符串中的内容应当是ABCDEFG*******。 注意:部分源程序在文件PROG1.C中。 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 626,548
精华内容 250,619
关键字:

删除最后一个字符的函数