首页 养生问答 疾病百科 养生资讯 女性养生 男性养生

python如何去除字符串后面的日期,只留下域名?

发布网友

我来回答

5个回答

热心网友

你好,由于日期长度固定,或者说格式固定,因此可以利用一些已有函数删除每个字符串后面的指定长度的字符或者格式。可以了解一下re正则表达式和python提供的String库或者其他库。找到两篇文章,希望对你有所帮助。

python删除字符串中指定字符的方法

python 字符串 去除 特定位置字符

如果有帮助的话,希望给个采纳,谢谢啦。

热心网友

给你个简单方法,复制到word,用替换功能,如果你不确定全部,就一个个替换

热心网友

正则替换,

re.sub(r'\d{4}-\d{2}-\d{2}','', text)

热心网友

用find()找到“-”的位置a,再用str[:a]输出截取到的网址?

热心网友

例子:  1. 常见用法。  char buf[512] = ;  sscanf("123456 ", "%s", buf);  printf("%s\n", buf);  结果为:123456  2. 取指定长度的字符串。如在下例中,取最大长度为4字节的字符串。  sscanf("123456 ", "%4s", buf);  printf("%s\n", buf);  结果为:1234  3. 取到指定字符为止的字符串。如在下例中,取遇到空格为止字符串。  sscanf("123456 abcdedf", "%[^ ]", buf);  printf("%s\n", buf);  结果为:123456  4. 取仅包含指定字符集的字符串。如在下例中,取仅包含1到9和小写字母的字符串。  sscanf("123456abcdedfBCDEF", "%[1-9a-z]", buf);  printf("%s\n", buf);  结果为:123456abcdedf  5. 取到指定字符集为止的字符串。如在下例中,取遇到大写字母为止的字符串。  sscanf("123456abcdedfBCDEF", "%[^A-Z]", buf);  printf("%s\n", buf);  结果为:123456abcdedf  6、给定一个字符串iios/12DDWDFF@122,获取 / 和 @ 之间的字符串,先将 "iios/"过滤掉,再将非'@'的一串内容送到buf中  sscanf("iios/12DDWDFF@122", "%*[^/]/%[^@]", buf);  printf("%s\n", buf);  结果为:12DDWDFF  7、给定一个字符串““hello, world”,仅保留world。(注意:“,”之后有一空格)  sscanf(“hello, world”, "%*s%s", buf);  printf("%s\n", buf);  结果为:world  %*s表示第一个匹配到的%s被过滤掉,即hello被过滤了  如果没有空格则结果为NULL。  sscanf的功能很类似于正则表达式, 但却没有正则表达式强大,所以如果对于比较复杂的字符串处理,建议使用正则表达式.  //-------------------------------------------------------  sscanf,表示从字符串中格式化输入  上面表示从str中,输入数字给x,就是32700  久以前,我以为c没有自己的split string函数,后来我发现了sscanf;一直以来,我以为sscanf只能以空格来界定字符串,现在我发现我错了。  sscanf是一个运行时函数,原形很简单:  int sscanf(  const char *buffer,  const char *format [,  argument ] ...  );  它强大的功能体现在对format的支持上。  我以前用它来分隔类似这样的字符串2006:03:18:  int a, b, c;  sscanf("2006:03:18", "%d:%d:%d", a, b, c);  以及2006:03:18 - 2006:04:18:  char sztime1[16] = "", sztime2[16] = "";  sscanf("2006:03:18 - 2006:04:18", "%s - %s", sztime1, sztime2);  但是后来,我需要处理2006:03:18-2006:04:18  仅仅是取消了‘-’两边的空格,却打破了%s对字符串的界定。  我需要重新设计一个函数来处理这样的情况?这并不复杂,但是,为了使所有的代码都有统一的风格,我需要改动很多地方,把已有的sscanf替换成我自己的分割函数。我以为我肯定需要这样做,并伴随着对sscanf的强烈不满而入睡;一觉醒来,发现其实不必。  format-type中有%[]这样的type field。如果读取的字符串,不是以空格来分隔的话,就可以使用%[]。  %[]类似于一个正则表达式。[a-z]表示读取a-z的所有字符,[^a-z]表示读取除a-z以外的所有字符。  所以那个问题也就迎刃而解了:  sscanf("2006:03:18 - 2006:04:18", "%[0-9,:] - %[0-9,:]", sztime1, sztime2);

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com