无忧启动论坛

标题: 删除第N个某字符后面的所有字符 [打印本页]

作者: 2012xb21cn    时间: 2018-6-28 09:55
标题: 删除第N个某字符后面的所有字符
本帖最后由 2012xb21cn 于 2018-6-28 10:16 编辑

1245.5545.4784264-5455.65455
结果:
1245.5545.4784264-5455

需求:提取最后一个.前面的所有字符串,或删除最后一个.后面所有字符串
( .的个数不定)

麻烦高手帮忙!!!
作者: nttwqz    时间: 2018-6-28 09:59
for /f
作者: 2012xb21cn    时间: 2018-6-28 10:08
nttwqz 发表于 2018-6-28 09:59
for /f

高手能具体点吗?水平有限,用for只会截取第一个,达不到想要的结果
作者: chiannet    时间: 2018-6-28 10:25
pecmd.exe

SET A=1245.5545.4784264-5455.65455
RPOS B=.,1,%A%
CALC #B=%B%-1
LSTR A2=%B%,%a%
MESS %A2%
作者: dos时代菜鸟    时间: 2018-6-28 10:28
用 for 逆序 计数  找到 .  后 用 Set 截取。
作者: 2012xb21cn    时间: 2018-6-28 10:36
chiannet 发表于 2018-6-28 10:25
pecmd.exe

SET A=1245.5545.4784264-5455.65455

多谢高手,需要正常系统的批处理
作者: 2012xb21cn    时间: 2018-6-28 10:37
dos时代菜鸟 发表于 2018-6-28 10:28
用 for 逆序 计数  找到 .  后 用 Set 截取。

多谢指点,只能再去学习下
作者: tools241    时间: 2018-6-28 10:56
本帖最后由 tools241 于 2018-6-28 11:05 编辑

* 如何利用 仿unix/linux命令 sed 一次替换文字中的 "某些相似性的字串" ==>
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=383106

* windows下安装 UnxUtils -- 仿 unix/linux 命令 (约120个) ==>
   http://bbs.wuyou.net/forum.php?mod=viewthread&tid=383107


echo 1245.5545.4784264-5455.65455 | sed.exe -e "s:\(.*\)\..*:\1:"
会得到
1245.5545.4784264-5455

** 注解:
sed.exe -e "编辑指令" < 输入档 > 输出档
编辑指令中有 "s/找字串一/改成字串二/" 或 "s:找字串一:改成字串二:" ,
其中 s 表示 "替代"
.  表示 "任意字",  *  表示 "前面的字出现任意次数", 因此
  .*  表示 "任意字出现任意次数"
\ 表示 将其后的字的意义 "取消 或 另做不同的解释" , \/ 表示 / , \.
表示 .
\(.*\) 表示将 \(  \) 的内容存到字串二的 \1 中 ,




作者: chiannet    时间: 2018-6-28 11:09
本帖最后由 chiannet 于 2018-6-28 11:13 编辑
2012xb21cn 发表于 2018-6-28 10:37
多谢指点,只能再去学习下



没有用For ,语句不够精炼。但可以实现目标。

  1. @ECHO OFF
  2. SETLOCAL ENABLEDELAYEDEXPANSION
  3. set A=1245.5545.4784264-5455.65455
  4. CALL :LS "%A%"
  5. echo !A:~0,%D%!
  6. :END
  7. pause


  8. :LS
  9. IF %~1*==* GOTO :END
  10. SET "B=%~1"
  11. SET /A N=0
  12. SET /A D=0
  13. :LOOP
  14. SET B=%B:~0,-1%
  15. SET D2=%B:~-1,1%
  16. SET /A N=%N%+1
  17. IF "%D2%"=="."  (IF %N% GTR  %D% (SET /A  D=%N%-1))
  18. IF "%B%"=="" GOTO :EOF
  19. GOTO LOOP
复制代码

作者: 2012xb21cn    时间: 2018-6-28 11:30
chiannet 发表于 2018-6-28 11:09
没有用For ,语句不够精炼。但可以实现目标。

多谢C大,我已经用for/f分列式弄出来了
作者: dos时代菜鸟    时间: 2018-6-28 11:38
本帖最后由 dos时代菜鸟 于 2018-6-28 11:51 编辑

不知道 字符串中 . 的个数是否固定,如果知道 . 的个数是固定的,一句话就可以了。
否则,用这个 从后面 开始 一个字符一个字符的判断,并计数。明确位置,截取显示。

  1. @echo off
  2. setlocal ENABLEDELAYEDEXPANSION
  3. set "lx001=1245.5545.4784264-5455.65455"
  4. set "s1=."

  5. echo lx001="!lx001!"
  6. echo s1="!s1!"
  7. echo.

  8. set /a n=1
  9. :loop
  10.   for /f %%n in ("!n!") do (
  11.     if "!lx001:~%%n,1!"=="" goto end_l
  12.     if "!lx001:~-%%n,1!"=="!s1!" (    echo !lx001:~0,-%%n! &    goto end )
  13.   )
  14.   set /a n+=1
  15. goto loop
  16. :end_loop

  17. :end_l
  18.   echo 总长度 !n!,没找到 关键字符。
  19. :end
  20.   pause
复制代码

作者: nttwqz    时间: 2018-6-28 11:54
dos时代菜鸟 发表于 2018-6-28 11:38
不知道 字符串中 . 的个数是否固定,如果知道 . 的个数是固定的,一句话就可以了。
否则,用这个 从后面  ...

这个?我可以投机取巧吗??

for /f "delims=" %%a in ("需要处理的字符") do echo %%~na
作者: dos时代菜鸟    时间: 2018-6-28 11:56
本帖最后由 dos时代菜鸟 于 2018-6-28 11:59 编辑
nttwqz 发表于 2018-6-28 11:54
这个?我可以投机取巧吗??

for /f "delims=" %%a in ("需要处理的字符") do echo %%~na

你这样 得到的 难道 不是 一个 文件名么?

  1. 另外,FOR 变量参照的替换已被增强。你现在可以使用下列
  2. 选项语法:

  3.      %~I          - 删除任何引号("),扩展 %I
  4.      %~fI        - 将 %I 扩展到一个完全合格的路径名
  5.      %~dI        - 仅将 %I 扩展到一个驱动器号
  6.      %~pI        - 仅将 %I 扩展到一个路径
  7.      %~nI        - 仅将 %I 扩展到一个文件名
  8.      %~xI        - 仅将 %I 扩展到一个文件扩展名
  9.      %~sI        - 扩展的路径只含有短名
  10.      %~aI        - 将 %I 扩展到文件的文件属性
  11.      %~tI        - 将 %I 扩展到文件的日期/时间
  12.      %~zI        - 将 %I 扩展到文件的大小
  13.      %~$PATH:I   - 查找列在路径环境变量的目录,并将 %I 扩展
  14.                    到找到的第一个完全合格的名称。如果环境变量名
  15.                    未被定义,或者没有找到文件,此组合键会扩展到
  16.                    空字符串

  17. 可以组合修饰符来得到多重结果:

  18.      %~dpI       - 仅将 %I 扩展到一个驱动器号和路径
  19.      %~nxI       - 仅将 %I 扩展到一个文件名和扩展名
  20.      %~fsI       - 仅将 %I 扩展到一个带有短名的完整路径名
  21.      %~dp$PATH:I - 搜索列在路径环境变量的目录,并将 %I 扩展
  22.                    到找到的第一个驱动器号和路径。
  23.      %~ftzaI     - 将 %I 扩展到类似输出线路的 DIR
复制代码


作者: nttwqz    时间: 2018-6-28 12:00
dos时代菜鸟 发表于 2018-6-28 11:56
你这样 得到的 难道 不是 一个 文件名么?

你可以试一下,文件名也是字符嘛!只不过不能用文件名没有的特殊字符而已,所以才叫投机取巧嘛!哈哈哈哈
作者: chiannet    时间: 2018-6-28 12:01
本帖最后由 chiannet 于 2018-6-28 12:02 编辑
2012xb21cn 发表于 2018-6-28 11:30
多谢C大,我已经用for/f分列式弄出来了


不使用for,可能比较精炼的代码:

  1. @ECHO OFF

  2. SET "B=1245.5545.4784264-5455.65455"
  3. SET RESULT=找不到.

  4. :LOOP
  5. SET D=%B:~-1,1%
  6. SET B=%B:~0,-1%
  7. IF "%D%"=="."  (SET "RESULT=%B%" && GOTO :END)
  8. IF "%B%"=="" GOTO :END
  9. GOTO LOOP

  10. :END
  11. ECHO %RESULT%
  12. PAUSE
  13. EXIT
复制代码

作者: dos时代菜鸟    时间: 2018-6-28 12:02
nttwqz 发表于 2018-6-28 12:00
你可以试一下,文件名也是字符嘛!只不过不能用文件名没有的特殊字符而已,所以才叫投机取巧嘛!哈哈哈哈

有道理,分隔符 恰恰是 文件名 扩展名 分隔符。
哈哈哈。
这个可以有。

作者: dos时代菜鸟    时间: 2018-6-28 12:11
chiannet 发表于 2018-6-28 12:01
不使用for,可能比较精炼的代码:


没有 setlocal ENABLEDELAYEDEXPANSION的情况下,你这个  更清新 。
作者: guies    时间: 2018-6-28 12:13
有沒有獲取 %~dp0 ,但不要有最後面那個 \
我不要用 %CD%
作者: 窄口牛    时间: 2018-6-28 12:49
本帖最后由 窄口牛 于 2018-6-28 12:50 编辑

没你们那么高的水平,不过我也觉得用文件名和扩展名处理挺简单的。看上去他这个案例恰巧也不会有特殊字符。
作者: 2012xb21cn    时间: 2018-6-28 13:42
nttwqz 发表于 2018-6-28 11:54
这个?我可以投机取巧吗??

for /f "delims=" %%a in ("需要处理的字符") do echo %%~na

高,当文件名确实也能解决,并且更简练
作者: holley2008    时间: 2018-6-28 13:47
本帖最后由 holley2008 于 2018-6-28 13:48 编辑

你想多了...
直接把其当做一个文件名

  1. @echo off&setlocal enabledelayedexpansion
  2. set str=1245.5545.4784264-5455.65455
  3. for %%i in ("%str%") do set "newstr=%%~ni"
  4. echo %newstr%
复制代码

即可得到你要的结果。
作者: 2012xb21cn    时间: 2018-6-28 13:56
holley2008 发表于 2018-6-28 13:47
你想多了...
直接把其当做一个文件名

刚好凑巧分隔符是.,如果是其它字符就不行了
作者: xzf680    时间: 2018-6-28 14:02
  1. ### 友情提示:本脚本由 Au3.REHelper 于 2018/06/28 14:01 自动生成,不保证其正确性,请自行测试 ###
  2. Local $sSource = '1245.5545.4784264-5455.65455'
  3. ;~MsgBox(0, '源字符串', $sSource)
  4. Local $sSRERe = StringRegExpReplace($sSource, '(.*?)(.\w+), '$1')
  5. MsgBox(0, '替换结果', $sSRERe)
复制代码

作者: holley2008    时间: 2018-6-28 14:45
2012xb21cn 发表于 2018-6-28 13:56
刚好凑巧分隔符是.,如果是其它字符就不行了

一样类似  可以set定义.代替其它分隔符 效果最明显 不需要for或findstr查找半天。
作者: 2012xb21cn    时间: 2018-6-28 15:01
holley2008 发表于 2018-6-28 14:45
一样类似  可以set定义.代替其它分隔符 效果最明显 不需要for或findstr查找半天。

赞,这个思路不错
作者: chiannet    时间: 2018-6-28 16:00
本帖最后由 chiannet 于 2018-6-28 16:02 编辑
2012xb21cn 发表于 2018-6-28 15:01
赞,这个思路不错




这个并不太好,比如以下字符串


  1. 1245.55,45.478,4264-5455.65,4.55

复制代码


如果要以","为分隔符,截取最右","之前的字符,如果把","替换为".",再按文件名来整,显然会得错误结果。其实16楼的比较精炼了。

稍微改一下,还可以实现获取最左"."后的字符串等。
作者: 2012xb21cn    时间: 2018-6-28 16:06
chiannet 发表于 2018-6-28 16:00
这个并不太好,比如以下字符串

那如何批量从文件中读取修改呢(每行都是类似数据)?试着改了下总不成功
作者: chiannet    时间: 2018-6-28 17:03
2012xb21cn 发表于 2018-6-28 16:06
那如何批量从文件中读取修改呢(每行都是类似数据)?试着改了下总不成功
  1. @ECHO OFF
  2. del "%~DP0转化后.TXT" /F >NUL 2>NUL
  3. FOR /F "delims=" %%I IN ('type "%~DP0原始.txt"')  DO  CALL :L "%%I"
  4. EXIT

  5. :L
  6. SET "B=%~1"
  7. SET RE=此行找不到”.“

  8. :R
  9. SET D=%B:~-1,1%
  10. SET B=%B:~0,-1%
  11. IF "%D%"=="."  (SET "RE=%B%"&&GOTO :E)
  12. IF "%B%"=="" GOTO :E
  13. GOTO R

  14. :E
  15. ECHO %RE% >>"%~DP0转化后.TXT"
  16. GOTO :EOF
复制代码

作者: chiannet    时间: 2018-6-28 17:05
修改一下上面代码的原始.txt及转化后.txt的路径
作者: 2012xb21cn    时间: 2018-6-28 17:26
chiannet 发表于 2018-6-28 17:05
修改一下上面代码的原始.txt及转化后.txt的路径

多谢C大,换其它字符都测试成功
作者: holley2008    时间: 2018-6-28 18:13
chiannet 发表于 2018-6-28 16:00
这个并不太好,比如以下字符串

16F的通用性确实好很多!
  1. @echo off&setlocal enabledelayedexpansion
  2. set str=1245.5545.4784264-5455.65455
  3. :start
  4. set last=%str:~-1,1%
  5. set str=%str:~0,-1%
  6. IF "%last%"=="."  (goto end )
  7. goto start
  8. :end
  9. echo "%str%"
  10. pause>nul
复制代码

但突然发神经,想获取第一个.号前面的字符串呢?
脑阔大!!!
作者: holley2008    时间: 2018-6-28 18:47
本帖最后由 holley2008 于 2018-6-28 18:51 编辑
  1. @echo off&setlocal enabledelayedexpansion
  2. set str=1245.5545.4784264-5455.65455
  3. :start
  4. set first=%str:~0,1%
  5. set last=%str:~-1,1%
  6. set str=%str:~0,-1%
  7. set strf=%str:~1,-1%
  8. IF "%last%"=="." (goto end )
  9. IF "%first%"=="." (goto end )
  10. goto start
  11. :end
  12. echo "%str%"
  13. echo "%strf%"
  14. pause>nul
复制代码

应该可以。回家途中,回去再试试…
手机编辑巨麻烦
作者: slore    时间: 2018-6-28 21:18
  1. @echo off
  2. set a=1245.5545.4784264-5455.65455
  3. set dp_tmp=X:\%a:.=\%

  4. call :DOTPATH %dp_tmp%
  5. echo %RET_PATH%
  6. pause
  7. goto :EOF

  8. :DOTPATH
  9. set RET_PATH=%~dp1
  10. set RET_PATH=%RET_PATH:\=.%
  11. set RET_PATH=%RET_PATH:~3,-1%
  12. goto :EOF
复制代码

作者: slore    时间: 2018-6-28 21:24
  1. @echo off
  2. set a=1245.5545.4784264-5455.65455
  3. set a1=X:\%a:.=\%
  4. for /f %%i in ("%a1%") do set a1=%%~pi
  5. set a1=%a1:\=.%
  6. set a1=%a1:~1,-1%
  7. echo %a1%
  8. pause
复制代码

作者: dos时代菜鸟    时间: 2018-6-28 22:10
本帖最后由 dos时代菜鸟 于 2018-6-28 22:19 编辑

从前往后 剔除第一个 . 前面的部分
两个方法,自己选。


  1. @echo off
  2. set "lx001=1245.5545.4784264-5455.65455"
  3. :loop
  4.         if "%lx001:~0,1%"=="" goto end
  5.         if "%lx001:~0,1%"=="." goto end
  6.         set lx001=%lx001:~1%
  7.         goto loop
  8. :end
  9. echo “%lx001:~1%”
  10. pause
复制代码


  1. @echo off
  2. for /f "tokens=1,* delims=." %%a in ("1245.5545.4784264-5455.65455") do (echo "%%b")
  3. pause
复制代码


作者: dos时代菜鸟    时间: 2018-6-28 22:14
slore 发表于 2018-6-28 21:24

如果原字符串中含有  \  就会产生误解。
作者: holley2008    时间: 2018-6-29 07:06
dos时代菜鸟 发表于 2018-6-28 22:10
从前往后 剔除第一个 . 前面的部分
两个方法,自己选。

获取的是第一个.后面的字符串,,,我想要的是获取第一个.前面的字符串
用for比较简单
  1. for /f "tokens=1 delims=." %%a in ("%str%") do echo %%a
复制代码

但想靠set分割 来做  有点抓瞎...
作者: 9zhmke    时间: 2018-6-29 08:45
是在重新做OFFICE了吗?你可以把具体任务放上来,大家一起帮你调试。
作者: chiannet    时间: 2018-6-29 08:53
本帖最后由 chiannet 于 2018-6-29 09:09 编辑
holley2008 发表于 2018-6-29 07:06
获取的是第一个.后面的字符串,,,我想要的是获取第一个.前面的字符串
用for比较简单













  1. @ECHO OFF
  2. SETLOCAL ENABLEDELAYEDEXPANSION
  3. SET A1=左&SET A2=右&SET B1=前&SET B2=后

  4. :N
  5. CLS
  6. ECHO.&ECHO.
  7. ECHO.&ECHO.
  8. SET /P FS=输入定位符号并回车:
  9. REM 定位符号,赋值给FS,本批处理只能处理长度为1的单字符。
  10. IF "%FS%"=="" (ECHO.&ECHO 输入无效,请重新输入!
  11. PAUSE >NUL && CLS && GOTO N) ELSE (SET FS=%FS:~0,1%)

  12. SET "TP=%~DP0"
  13. REM 原始.TXT所在路径名,赋值给TP,以“\”结尾。
  14. IF NOT EXIST "%TP%原始.TXT" (ECHO.&ECHO 未发现"%TP%原始.TXT"
  15. PAUSE >NUL && CLS && EXIT)

  16. :M
  17. CLS
  18. SET AX=&SET BX=
  19. ECHO.&ECHO.
  20. ECHO.&ECHO              按需求变换“原始.TXT”中每行字符串
  21. ECHO.&ECHO.
  22. ECHO.&ECHO        1、取得最%A1%“%FS%”之%B1%的字符
  23. ECHO.&ECHO        2、取得最%A1%“%FS%”之%B2%的字符
  24. ECHO.&ECHO        3、取得最%A2%“%FS%”之%B1%的字符
  25. ECHO.&ECHO        4、取得最%A2%“%FS%”之%B2%的字符
  26. ECHO.&ECHO        5、退出

  27. ECHO.&ECHO.
  28. SET /P AB=输入代码并回车:
  29. IF NOT "%AB%"=="" SET AB=%AB:~0,1%
  30. IF "%AB%"=="1" (SET AX=%A1%&SET BX=%B1%)
  31. IF "%AB%"=="2" (SET AX=%A1%&SET BX=%B2%)
  32. IF "%AB%"=="3" (SET AX=%A2%&SET BX=%B1%)
  33. IF "%AB%"=="4" (SET AX=%A2%&SET BX=%B2%)
  34. IF "%AB%"=="5" EXIT
  35. IF "%AX%"=="" (ECHO.&ECHO 输入无效,请重新输入!
  36. PAUSE >NUL && CLS && GOTO M)
  37. SET PT="%TP%最%AX%定位符之%BX%的字符.TXT"
  38. DEL %PT% /F >NUL 2>NUL
  39. FOR /F "DELIMS=" %%I IN ('TYPE "%TP%原始.TXT"')  DO  CALL :L "%%I"
  40. IF EXIST %PT% (CLS&ECHO.&ECHO %PT% 已创建。&ECHO.&ECHO.&PAUSE)
  41. GOTO M

  42. :L
  43. SET "B=%~1"
  44. IF "%AB%"=="1"  (IF "%B:~0,1%"=="%FS%" (SET "RE=有一个“%FS%”位于此行首位。"&GOTO E))
  45. IF "%AB%"=="4"  (IF "%B:~-1%"=="%FS%" (SET "RE=有一个“%FS%”位于此行末尾。"&GOTO E))
  46. SET RE=此行找不到指定的定位符号"%FS%"!
  47. SET /A N=1
  48. SET "A=%~1"

  49. :R
  50. SET /A NN=%N%-1

  51. IF "%AB%"=="4" (SET "B=!A:~-%N%!"
  52.         SET "D=!B:~0,1!"
  53.         IF "!D!"=="%FS%" (SET "RE=!A:~-%NN%!"&GOTO E)
  54.         IF "!B!"=="%A%" GOTO E)

  55. IF "%AB%"=="3"  (SET D=%B:~-1,1%
  56.         SET B=!B:~0,-1!
  57.         IF "!D!"=="%FS%"  (SET "RE=!B!"&GOTO E))

  58. IF "%AB%"=="2"  (SET D=%B:~0,1%
  59.         SET B=!B:~1,100000!
  60.         IF "!D!"=="%FS%"  (SET "RE=!B!"&GOTO E))

  61. IF "%AB%"=="1" (SET "B=!A:~0,%N%!"
  62.         SET "D=!B:~-1!"
  63.         IF "!D!"=="%FS%"  (SET "RE=!A:~0,%NN%!"&GOTO E)
  64.         IF "!B!"=="%A%" GOTO E)

  65. SET /A N=%N%+1
  66. IF %AB% GTR 1 (IF %AB% LSS 4 (IF "%B%"=="" GOTO E))
  67. GOTO R

  68. :E
  69. IF %AB% GTR 1 (IF %AB% LSS 4 (IF "%RE%"=="" SET "RE=有且仅有一个“%FS%”位于此行最%BX%位。"))
  70. ECHO %RE%>>%PT%
  71. GOTO :EOF




复制代码

作者: chiannet    时间: 2018-6-29 09:02
闲得那个痛才搞这样的代码
作者: dos时代菜鸟    时间: 2018-6-29 09:29
本帖最后由 dos时代菜鸟 于 2018-6-29 10:54 编辑
chiannet 发表于 2018-6-29 08:53




一个 豆豆 的事情,搞得大家都  很 会逗了。哈哈哈
作者: newswan    时间: 2018-7-1 14:22
对于不定长,把分隔符转成空格,字符串作为函数参数,用 shift 依次处理

set A=1245.5545.4784264-5455.65455
set A=%A:.= %
call :f %A%
goto :end

:f
do

shift 1
loop

goto :eof


作者: likeyouli    时间: 2022-9-1 11:43
本帖最后由 likeyouli 于 2022-9-1 11:47 编辑

老帖子,很有意义,也顶下,
顺便说下我的答案,假如1245.5545.4784264-5455.65455在excel中是A1单元格,
提取最后一个.前面的所有字符串:  =LEFT(A1,FIND("louzhuhaoren",SUBSTITUTE(A1,".","louzhuhaoren",LEN(A1)-LEN(SUBSTITUTE(A1,".",""))))-1)   无论有多少个.  无论长度多少均可以,但没有.时会报错

作者: likeyouli    时间: 2022-9-1 14:38
本帖最后由 likeyouli 于 2022-9-4 16:33 编辑

接上个帖子,改进下,没有这个符号 . 时,提示“没有这个符号”
=IF(ISERROR(LEFT(A1,FIND("louzhuhaoren",SUBSTITUTE(A1,".","louzhuhaoren",LEN(A1)-LEN(SUBSTITUTE(A1,".",""))))-1)),"没有这个符号",LEFT(A1,FIND("louzhuhaoren",SUBSTITUTE(A1,".","louzhuhaoren",LEN(A1)-LEN(SUBSTITUTE(A1,".",""))))-1))
作者: likeyouli    时间: 2023-1-8 11:51
用正则表达式最方便,首尾匹配,
最后一个不是.  而是其他符号甚至空格都可以:\D\d+$
这样获取的是最后一个符号及后边的数字,如果需要前边的内容,将这替换为空即可

正则表达式测试工具.exe

333 KB, 下载次数: 0, 下载积分: 无忧币 -2


作者: ZMLoveLH    时间: 2023-1-14 14:26
看了这个帖子里牛人的解答,我觉得我的水平还不够,多学习学习啊
作者: aliabc-999    时间: 2023-1-14 15:33
感谢大神分享!!!
作者: yyz2191958    时间: 2023-1-14 17:58
不错 学习到不少
作者: tanglf    时间: 2024-2-25 09:02
技术贴!
收藏了




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3