golang 正则表达式去除字符串空格_golang 去掉字符串前后的空格tab和换行-程序员宅基地

技术标签: golang高性能服务器编程  

golang中string操作是一个比较频繁的工作。其中去除空格、换行、空白符是经常需要的。

源码:

package main

import (
	"fmt"
	"regexp"
	"strings"
)

func compressStr(str string) string {
    
	if str == "" {
    
		return ""
	}
	//匹配一个或多个空白符的正则表达式
	reg := regexp.MustCompile("\\s+")
	return reg.ReplaceAllString(str, "")
}

func main() {
    
	str := "		8debdcc4362972bcb0872aec7493712c7b2bf95087436a0a90bbcbf3cd15c8ff"
	//str := "    8debdcc4362972bcb0872aec7493712c7b2bf95087436a0a90bbcbf3cd15c8ff"
	fmt.Printf("%s\n", str)

	str_s := strings.Replace(str, " ", "", -1)
	fmt.Printf("%s\n", str_s)

	// 利用正则表达式去除空白符
	str_z := compressStr(str)
	fmt.Printf("%s\n", str_z)
}

执行结果:

root@helmsman:~/hlm-miner/script/lotus/lotus-user# go run main.go 
		8debdcc4362972bcb0872aec7493712c7b2bf95087436a0a90bbcbf3cd15c8ff
		8debdcc4362972bcb0872aec7493712c7b2bf95087436a0a90bbcbf3cd15c8ff
8debdcc4362972bcb0872aec7493712c7b2bf95087436a0a90bbcbf3cd15c8ff
root@helmsman:~/hlm-miner/script/lotus/lotus-user# 
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/jacky128256/article/details/116711893

智能推荐

jQuery总结-程序员宅基地

文章浏览阅读160次。 一、简介 1.1、概述随着WEB2.0及ajax思想在互联网上的快速发展传播,陆续出现了一些优秀的Js框架,其中比较著名的有Prototype、YUI、jQuery、mootools、Bindows以及国内的JSVM框架等,通过将这些JS框架应用到我们的项目中能够使程序员从设计和书写繁杂的JS应用中解脱出来,将关注点转向功能需求而非实现细节上,从而提高项目的开发速度。jQ..._jquery中anmite去除溢出隐藏

java常用加密算法_base.encrypty.algorithm-程序员宅基地

文章浏览阅读3.1k次。java常用加密算法_base.encrypty.algorithm

Vue设置背景图片(全屏背景),实际操作与踩雷._vue设置整个背景图片-程序员宅基地

文章浏览阅读4.9w次,点赞100次,收藏137次。最近一直困扰我一个背景问题,也是Vue的项目,问题就是在Vue上添加一个好看的背景,每次去网上查的时候,几乎所有插过来的答案都是一样的,我一度怀疑他们理解的背景和我理解的背景是两个东西网上的答案:在主div上设置:<div :style="backgroundDiv"></div>data中的设置:data() { return { bac..._vue设置整个背景图片

MyBatis 详解-程序员宅基地

文章浏览阅读1k次,点赞36次,收藏8次。MyBatis 是更简单完成程序和数据库交互的⼯具,也就是更简单的操作和读取数据库⼯具。MyBatis 是⼀款优秀的持久层框架,它⽀持⾃定义 SQL、存储过程以及⾼级映射。MyBatis 去除了⼏ 乎所有的 JDBC 代码以及设置参数和获取结果集的⼯作。MyBatis 可以通过简单的 XML 或注解来配置 和映射原始类型、接⼝和 Java POJO(Plain Old Java Objects,普通⽼式 Java 对象)为数据库中的记录。

用泛型实现ArrayList实例_实现例11.1泛型引例arraylist程序-程序员宅基地

文章浏览阅读807次。import java.util.*;public class CollectionGeneric{ public static void main(String[]args) { List list =new ArrayList (); list.add("I"); list.add("love"); list.add("you"); list.add("!"); _实现例11.1泛型引例arraylist程序

C++程序编译运行后窗口一闪而过问题_c++运行结果为什么一闪而过-程序员宅基地

文章浏览阅读1.1k次。问题:刚开始学习C++写win32 console application 程序的时候使用不同的编译器结果显示的那个窗口可能闪一下就消失了。 解决办法:有的编译器很好,在示例程序中给出了类似的解决办法,如在devC++下,新建一个非空的C++类的时候,在return 0;之前会有这么一句:system(“PAUSE”);在visual studio中如果你按照步骤来的话不会出现一闪而过的情况_c++运行结果为什么一闪而过

随便推点

微信如何隐藏好友和好友消息或隐藏群聊-无需root-密友模块-太极_太极密友模块-程序员宅基地

文章浏览阅读7.2k次。前言微信是21世纪中国最流行的社交软件,老少均用的app。强大的社交功能,让人们的生活已经离不开微信社交。随之而来的问题是我们的隐私不容易受到保护。面对微信隐私问题,网上的大神层出不穷,出现了很多流行的隐藏微信消息、好友、群聊的软件。比如:香蕉密友、蜘蛛密友、微信密友,还有一些苹果的隐藏好友软件很多。但是这些软件的缺点是收费高、不稳定、易封号。今天给大家介绍一个可以永久使用的全网最精华的app。正文在csdn上我发表过一篇关于如何使用微信密友的文章,至今阅读量是3225。详细的介绍了密友模块的安装_太极密友模块

2017 Multi-University Training Contest 10 1001 Admiral HDU 6171 (双向搜索 哈希)-程序员宅基地

文章浏览阅读497次。题意: 给你一个高度为6的塔形数组,你每次只能将0与他上下相邻的某个数交换,问最少交换多少次可以变为初始状态,若需要的步数大于20,直接输出too difficult,初始状态为:0 1 1 2 2 2 3 3 3 3 4 4 4 4 4 5 5 5 5 5 5思路:因为最多走20步,当存搜索时间复杂度4^20, 所以我们可以分别从当前状态和初始状态进行双向_hdu 6171

本地项目测试,连接云服务器redis-server失败_项目测试云服务器-程序员宅基地

文章浏览阅读213次。需要确定三个问题:是否打开了对应的服务器6379端口;修改启动的redis.conf文件内容:将peotected mod 修改为no;同时将bing: 127:0:0:1注释掉。这样redis就允许来自非本机的连接请求了!_项目测试云服务器

Pytorch Tensorboard 使用_pytorch tensorboard中的auc-程序员宅基地

文章浏览阅读334次。Pytorch Tensorboard 使用此文为 pytorch tensorboard 使用的基础总结。导包from tensorboardX import SummaryWriter对象声明writer = SummaryWriter('./tests/log/')实例化写入x = [9, 8, 7, 6, 5]y = [1, 2, 3, 4, 5]for l in range(len(x)): print(x[l], y[l]) writer.add_scala_pytorch tensorboard中的auc

嵌入式Linux的内核编译-程序员宅基地

文章浏览阅读2k次,点赞3次,收藏5次。实验环境VMware Workstation PlayerUbuntu16.04kernel-3.2.tar.bz2Linux内核编译在ubuntu上编译嵌入式Linux内核,需要大家提前安装好交叉编译工具链,在此就不再赘述。编写Linux内核需要内核源码和内核编译配置文件kernel_config,如下图:具体编译步骤如下:1.解压内核源码tar -jxvf kernel...

Binder与AIDL的关系_aidl和binder的关系-程序员宅基地

文章浏览阅读9.1k次,点赞3次,收藏21次。什么是BinderBinder是一个类,它实现了IBinder接口,而IBinder接口定义了与远程对象的交互协议。通常在进行跨进程通信时,不需要实现IBinder接口,直接从Binder派生即可。除了实现IBinder接口外,Binder中还提供了两个重要的接口。(1)Transact(),客户端调用,用于发送调用请求(2)onTransact(),服务端响应,用于接收调用请求因为以上的原因,B..._aidl和binder的关系

推荐文章

热门文章

相关标签