【发布时间】:2019-09-24 19:43:18
【问题描述】:
我有一个如下字符串:
dn: uid=svc_ddvportal2ssh,cn=users,cn=accounts,dc=tenant,dc=ycsdev,dc=io cn: svc_ddvportal2ssh svc_ddvportal2ssh krbpasswordexpiration: 20180607182429Z dn: uid=svc_ddvrundeckdeploy,cn=users,cn=accounts,dc=tenant,dc=ycsdev,dc=io cn: svc_ddvrundeckdeploy svc_ddvrundeckdeploy krbpasswordexpiration: 20180607182430Z dn: uid=svc_bo2ansible_mon,cn=users,cn=accounts,dc=tenant,dc=ycsdev,dc=io cn: svc_bo2ansible_mon svc_bo2ansible_mon krbpasswordexpiration: 20990101200000Z
想像下面这样提取到数组a中
a[0] = dn: uid=svc_bo2icinga2ipa,cn=users,cn=accounts,dc=tenant,dc=ycsdev,dc=io cn: svc_bo2icinga2ipa svc_bo2icinga2ipa krbpasswordexpiration: 20180119194104Z
a[1] = dn: uid=svc_ddvrundeckdeploy,cn=users,cn=accounts,dc=tenant,dc=ycsdev,dc=io cn: svc_ddvrundeckdeploy svc_ddvrundeckdeploy krbpasswordexpiration: 20180607182430Z
a[2] = uid=svc_bo2ansible_mon,cn=users,cn=accounts,dc=tenant,dc=ycsdev,dc=io cn: svc_bo2ansible_mon svc_bo2ansible_mon krbpasswordexpiration: 20990101200000Z
我尝试使用IFS 分隔符但没有成功。请有人帮我解决这个问题
【问题讨论】:
-
具体来说,哪个词是分隔符?您能否构建更短/更易于阅读的示例数据,使您想要的逻辑更加明显? (minimal reproducible example 规则不仅仅适用于代码)。
-
为什么
a[2]值上没有dn:前缀? -
我怀疑输入字符串中不存在换行符。
-
@JNevill, ...什么换行?我在问题的文字中看不到任何内容;它只是在单个反引号中允许浏览器完成换行,因此人们实际上可以读取输入数据而无需从左到右滚动。
-
a[2] 也包含 dn 元素。错字。