除了Java,其他编程语言如何实现类似的功能?
时间: 2024-09-28 19:11:21 浏览: 15
在Python中,可以使用类似的方法来处理这个问题。下面是一个简化的Python版本:
```python
def format_birth_date(input_str):
if len(input_str) == 4: # 四位数,假设20XX年
year = 2000 + int(input_str[:2])
month = int(input_str[2:])
return f"{year:04d}-{month:02d}"
elif len(input_str) == 6: # 六位数,直接格式化
year = int(input_str[:4])
month = int(input_str[4:6])
return f"{year:04d}-{month:02d}"
else:
raise ValueError("Invalid birth date format")
# 示例
input_str = "199808"
print(format_birth_date(input_str))
```
在JavaScript中,也可以采用类似思路,如下所示:
```javascript
function formatBirthDate(input) {
if (input.length === 4) { // 四位数,假设20XX年
const [year, month] = input.slice(0, 2).split('').map(Number);
return `${year * 100 + (month < 2 ? 20 : 19)}-${month}`;
} else if (input.length === 6) { // 六位数
const [year, month] = input.split('');
return `${year}${month.padStart(2, '0')}-${month}`;
} else {
throw new Error('Invalid birth date format');
}
}
// 示例
const inputStr = "199808";
console.log(formatBirthDate(inputStr));
```
这些示例展示了在Python、JavaScript等编程语言中,如何利用内置的字符串操作函数来实现类似的数据格式转换功能。