Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

access2007如何提取出来字符串中的[2013]年份

银河巨像  发表于:2015-05-08 16:29:19  
复制

字符串中有方括号括起来的年份,4位数字的,也有可能是其他的汉字,如何提取出来这个信息写入其他字段



试了下通配符,?号,#号都不行


update tb set f2 = mid(instr f1, "[####]") +1, 4)



 

Top
竹笛 发表于:2015-05-09 11:07:12

提供一个思路给你:

用instr函数判断第一个中括号的位置是第几位,方法如下:

Dim x As Long
x = InStr("ABC68[9V", "[")
上面的代码中,x值等于6


再判断后一位是不是数字,如果是数字,则用mid函数取出值


以上仅提供一个思路,你还需要处理如果不是数字的情况



红尘如烟 发表于:2015-05-09 11:19:28
就是用竹笛的思路即可,直接在查询中用的写法是:
UPDATE tb SET f2 = Mid([f1],InStr(1, [f1], '[') + 1, 4)


总记录:2篇  页次:1/1 9 1 :