当前位置: 首页 > 面试题库 >

如何解析非英语字符串中的月份

赵钊
2023-03-14
问题内容

我想将以下字符串解析为日期:

"This item will be released on March 9, 2014."

我遵循了这一点,想到了:

func findReleaseDateString(raw string) time.Time {
  test, err := time.Parse("This item will be released on January 2, 2006.", raw)
  if err != nil {
      panic(err)
  }

 return test
}

就像英语字符串的魅力一样。

我的问题 :我想解析 德语字符串 。喜欢:

"Dieser Artikel wird am 9. März 2014 erscheinen."

我知道,我可以通过正则表达式匹配日,月和年,然后进行解析。但是有没有可能 告诉time.Parse为month使用不同的常量集


问题答案:

该时间包目前不支持i18n。等待发生这种情况时,您可以尝试使用包装程序包,例如:

github.com/goodsign/monday

monday的文档所述:

星期一不是标准时间套餐的替代选择。这是国际化功能尚未准备就绪时使用的临时解决方案。

这就是为什么星期一不创建任何其他解析算法,布局标识符的原因。它只是time.Format和time.ParseInLocation的包装,并使用所有相同的布局ID,常量等。

这是您使用的示例monday

package main

import (
    "fmt"
    "github.com/goodsign/monday"
    "time"
)

func findReleaseDateString(raw string) time.Time {
    loc, _ := time.LoadLocation("Europe/Berlin")
    t, err := monday.ParseInLocation("Dieser Artikel wird am 2. January 2006 erscheinen.", raw, loc, monday.LocaleDeDE)
    if err != nil {
        panic(err)
    }

    return t
}

func main() {
    t := findReleaseDateString("Dieser Artikel wird am 9. März 2014 erscheinen.")
    fmt.Println(t)
}

输出:

2014-03-09 00:00:00 +0100 CET



 类似资料:
  • 问题内容: 我是HTTP相关事务的新手。我的问题是在iOS开发中,我想使用HTTP标头发送字符串,因此我在使用: 接收服务器是Python(Google App Engine),使用以下命令将db模型中的字符串值保存为StringProperty: 但是,问题是当我尝试发送非英语字符串(如韩语)时,它像这样保存在HTTP标头中: 并在Google App Engine收到并保存在DataStore

  • 我读了这段代码。正如世外桃源.txt内容使用“测试”。该文件的大小为 4 个字节。如果我使用调试来运行 一次一个字节,每次打开文件后再次打开.txt(用记事本)我依次看到:t--

  • 问题内容: 在那里,我正在制作此应用来更改字幕文件。当我测试它时,我遇到一个奇怪的问题,当我在非英语(例如,波斯语)上对其进行测试时,该程序将无法读取该文件。这是我在程序中阅读字幕的方式: 其中address是.srt文件的字符串保留位置。 我应该怎么做才能使程序读取文件? 问题答案: 创建时选择其他编码。 遵循此思路的某些方法可能会起作用: 这将更改扫描程序以使用UTF-16编码读取文件。

  • 我对哈斯克尔有意见。我有这样的文本文件: 我不知道如何获得前两个数字(上面的2和7)和最后一行的列表。每行的末尾都有点。 我试图构建一个解析器,但名为readFile的函数返回名为IO String的Monad。我不知道如何从那种字符串中获取信息。 我更喜欢在一系列角色上工作。也许有一个函数可以将“IO字符串”转换为[Char]?

  • 问题内容: 我想要一个Cookie字符串(因为它可能会在Set-Cookie标头中返回),并且能够轻松修改其中的一部分,特别是到期日期。 我看到有几种不同的Cookie类,例如BasicClientCookie,但是我看不到任何简单的方法来将字符串解析为这些对象之一。 我在api级别9中看到他们添加了具有解析方法的HttpCookie,但是我需要在以前的版本中工作。 有任何想法吗? 谢谢 问题答案

  • 我有一根绳子 然后我想将其解析为sqlDate。并将其插入数据库。 是否可以将该字符串解析为sqlDate?!?! 是的,sql日期格式是“yyyy-mm-dd”