You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在程序中提取斜杠前字符并拼接日期中月份的首尾字母?

别着急,我来一步步帮你搞定这两个需求,其实核心就是字符串的分割和索引操作,咱们拆解来看:

一、提取斜杠“/”前的字符

假设你有任意带斜杠的字符串,比如"hello/world"或者你的日期串"07/December/2020",要拿到第一个斜杠前面的内容,可以这么做:

  1. 用indexOf('/')找到第一个斜杠的位置
  2. 用substring(0, 斜杠索引)截取从开头到斜杠前的部分
  3. 额外处理:如果字符串里没有斜杠,直接返回原字符串避免报错

代码示例(JavaScript):

function getBeforeSlash(str) {
  const slashIndex = str.indexOf('/');
  return slashIndex === -1 ? str : str.substring(0, slashIndex);
}

// 测试
console.log(getBeforeSlash("07/December/2020")); // 输出 "07"
console.log(getBeforeSlash("abc/def/ghi")); // 输出 "abc"
二、从日期串提取并拼接成“DR”

你的目标是从"07/December/2020"里拿到"December"的首字母D和最后一个字母R,拼成DR。你之前用substring和lastIndexOf没成功,大概率是没先把中间的“December”单独提取出来,咱们一步步来:

步骤1:分割字符串拿到“December”

用split('/')把日期串按斜杠分割成数组,这样就能直接拿到中间的月份部分:

const dateStr = "07/December/2020";
const parts = dateStr.split('/'); // 得到 ["07", "December", "2020"]
const month = parts[1]; // 拿到 "December"

步骤2:提取首字母和最后一个字母

  • 首字母直接取month[0](字符串可以像数组一样通过索引访问字符)
  • 最后一个字母可以用month[month.length - 1],如果想用substring的话,写month.substring(month.length - 1)也能拿到结果

步骤3:拼接成“DR”

把两个字符拼接起来就行,整合代码如下:

const dateStr = "07/December/2020";
const parts = dateStr.split('/');
const month = parts[1];
const result = month[0] + month[month.length - 1];
console.log(result); // 输出 "DR"

为什么你之前尝试可能失败?

比如如果直接对整个日期串用lastIndexOf('/'),拿到的是最后一个斜杠的位置,这时候用substring取到的是斜杠后面的内容,而不是月份的最后一个字母。所以关键是先把月份单独提取出来,再操作就简单多了。

内容的提问来源于stack exchange,提问作者user18139

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 04:13:54