Problem with substr and instr

create table ztest1 (descrr varchar2 (40));

values in ztest1
===============

123/09-00
1234345/66-44
1/8-00000
345656676/555555555-222222

I want to separate the values of slash and hyphen.

I am able to do first and last as
123 00 null
123345 44 null
1 null 0000
345656676 null 222222
With the following query

can you please advise me where I am doing wrong.

Select TRIM (SUBSTR (mck.descrr,
1,
INSTR (mck.descrr, "/")-1
)
) 'type ',.
TRIM (SUBSTR (mck.descrr,
INSTR (mck.descrr, '-') + 1.
INSTR (mck.descrr, '-', - 1).
-INSTR (mck.descrr, '-')
-1
)
) "part2"
TRIM (SUBSTR (mck.descrr,
INSTR (mck.descrr, '-',-1) + 1
)
) "T"
of ztest1 mck

Thanks in advance.

You are close with your attempt. You have to find the starting position of the /, then calculate the length between the / amd t he... So:

SQL> l
  1  with mck as (
  2    select '123/09-00' descrr from dual union all
  3    select '1234345/66-44'  from dual union all
  4    select '1/8-00000'  from dual union all
  5    select '345656676/555555555-222222' from dual)
  6  select TRIM (SUBSTR (mck.descrr, 1, INSTR (mck.descrr, '/') - 1)) "type",
  7         TRIM (SUBSTR (mck.descrr, INSTR (mck.descrr, '/') + 1,
  8                       INSTR (mck.descrr, '-') - INSTR (mck.descrr, '/')-1)) "part2",
  9         TRIM (SUBSTR (mck.descrr, INSTR (mck.descrr, '-', -1) + 1)) "T"
 10* from mck
SQL> /

type                       part2                      T
-------------------------- -------------------------- --------------------------
123                        09                         00
1234345                    66                         44
1                          8                          00000
345656676                  555555555                  222222

@Kim:
"Regular expressions will be easier," well, that's a little matter to debate ;-) they can get real ugly looking very quickly.

John

Tags: Database

Similar Questions

  • Need help with Substr and Instr

    I have a request

    Select msg

    from table_a

    She returned as log messages below

    Continued in logid = > 241153 < for oid = > 1621 <, GoC = > 795, bday = > 01.04.2013 <

    If the message contains logid = > then I want to display

    Continued in logid = > 241151 <

    for example

    case

    When the msg like ' % logid = > %'

    then

    I tried the combinations of substr and instr, but cannot make it work

    Any help appreciated

    Gus

    SQL >-samples:

    SQL > with t as

    2 (choose "continued in logid-online 241153< for="" oid="">1621<, gdc="">795, bday-online 01.04.2013")<;' str="" from="" dual="" union="">

    3 select "continued in pid-online 241153< for="" oid="">1621<, gdc="">795, bday-online 01.04.2013"<;' str="" from="">

    4)

    5. Select case-sensitive

    6 when instr (str, 'logid') > 0

    7 then substr (str

    8, instr (str, ' > ', 1, 1) + 1

    9, instr(str, '<', 1,="" 1)-instr(str,="" '="">', 1, 1)-1

    10                      )

    11 another null - or what you want / need

    12 end str

    13 t;

    STR

    ------------------------------------------------------------------------

    241153

    2 selected lines.

  • How to use substr and instr, where the line of input Multi text

    Hi all

    with

    data in the form of)

    Select ' Mary America.1234 Southridge Park Dr... Samna Lorie.MO.31234..' double val

    Union of all the

    Select 'Bill Johnson.Apartment 3 b. Sterling.VA.20166.3 Plaza Falke' of the double

    )

    Select

    regexp_substr (shipping_instructions, "[^ #] +' 1, 1") name

    , regexp_substr (shipping_instructions, "[^ #] +' 1, 2") address

    , regexp_substr (shipping_instructions, "[^ #] +' 1, 3") city

    , regexp_substr (shipping_instructions, "[^ #] +' 1, 4") State

    , regexp_substr (shipping_instructions, "[^ #] +' 1, 5") zip

    , regexp_substr (shipping_instructions, "[^ #] +' 1, 6") County

    FROM (select REGEXP_REPLACE (val, ' \.)) () [^.])', ' #\1 ") data shipping_instructions)

    (1)'Mary America.1234 Southridge Park Dr... Samna Lorie.MO.31234..'

    (2)'Bill Johnson.Apartment 3 b. Sterling.VA.20166.3 Falke Plaza. »

    "Mary America. 1234 Southridge Park Dr. Samna Lorie. MO.31234..'

    NAME ADDRESS CITY ZIP County SATE

    ---------                  --------                                ------------           ------           -------    -- -----

    Married America 1234 Southridge Park Dr.    Samna Lorie MO 31234  NULL VALUE

    "Bill Johnson. Apartment 3B. Sterling. VA. 20166. Falke Plaza 3... "

    NAME ADDRESS CITY ZIP County SATE

    ----------------      -----------------        -------       -----        ---         --------

    Bill Johnson apartment 3B Sterling, WILL 20166 3 Falke Plaza.

    Problem

    ---------

    (1) if the value, if the County (if null) value then it shows the ZIP with dot's (.) value, in the 31234 above..,.

    How to solve this problem?

    (2) another possible to fix the code, I want to use substr and InStr.

    (3) who is the best approach?

    Conditions:

    --------------

    (1) shipping_instructions column has the value with "Mary America.1234 Southridge Park Dr... Samna Lorie.MO.31234... »

    This means it combined all the similar name, address, city, State, zip

    (2) we insreted in the table separately.

    =========================

    / * Use Substr and Instr * /.

    =========================

    I used substr and instr, but I'm getting the money results (no point in the address).

    "America Mary. 1234 Southridge Park Dr. Samna Lorie.MO.31234..'


    NAME ADDRESS CITY ZIP County SATE

    ---------                  --------                                ------------           ------           -------    -- -----

    Mary America 1234 Southridge Park Dr. Samna Lorie MO 31234  NULL VALUE

    But I need the results (no point in the address)

    NAME ADDRESS CITY ZIP County SATE

    ---------                  --------                                ------------           ------           -------    -- -----

    Mary America 1234 Southridge Park Dr.    Samna Lorie MO 31234  NULL VALUE

    Hello

    994122 wrote:

    Hello

    (1) how do to do this, use the substr and instr functions?

    Thank you

    You can't do all the work with SUBSTR and INSTR; you need regular expressions to obtain a string delimited by a #.

    Once you have such a string, then you can use SUBSTR and INSTR (instead of REGEXP_SUBSTR) to get the separate secondary strings:

    WITH got_delimited_string AS

    (

    SELECT REGEXP_REPLACE (val

    , '\. ([^ .]| $)'

    , '#\1'

    ) AS delimited_string

    FROM the data

    )

    got_pos AS

    (

    SELECT delimited_string

    , INSTR (delimited_string, "#", 1, 1) AS pos_1

    , INSTR (delimited_string, "#", 1, 2), pos_2

    , INSTR (delimited_string, "#", 1, 3) AS pos_3

    , INSTR (delimited_string, "#", 1, 4) AS pos_4

    , INSTR (delimited_string, "#", 1, 5) AS pos_5

    , INSTR (delimited_string, "#", 1, 6) AS pos_6

    OF got_delimited_string

    )

    SELECT SUBSTR (delimited_string, 1, pos_1 - 1) AS the name

    SUBSTR (delimited_string, pos_1 + 1, pos_2 - (pos_1 + 1)) AS address

    SUBSTR (delimited_string, pos_2 + 1, pos_3 - (pos_2 + 1)) AS city

    SUBSTR (delimited_string, pos_3 + 1, pos_4 - (pos_3 + 1)) AS State

    REPLACE (SUBSTR (delimited_string, pos_4 + 1, pos_5 - (pos_4 + 1))

    , '.'

    )                                                           AS zip

    SUBSTR (delimited_string, pos_5 + 1, pos_6 - (pos_5 + 1)) AS the County

    OF got_pos

    ORDER BY delimited_string

    ;

  • substr and instr - get all the characters after the last.

    I have a few fields tbl as follows

    ABC, 123, xyz, 234

    123, ggg, ppp, rrr

    SSS/bbb/444/a

    BB/11

    XX/bb/f

    I want to choose any characters after the last.

    so the above might give

    234

    RRR

    one

    11

    f

    played with substr and instr but have not been able to figure it out yet. He should get one after last chain / no matter where / is or how they are.

    Here is an example

    Select

    substr ("123/dd/gg ', instr (substr (" 123/dd/gg ', instr ("123/dd/gg ', ' /'") + 1 "), ' / ') + 3")

    of the double

    substr ("123/dd/gg ', instr('123/dd/gg','/',-1,1) + 1")

  • SUBSTR and INSTR function

    Hi gurus,

    I have the data as follows:

    data
    -----------------------------------------------------------------------------------------------------------------------
    ' BIDIE01H / TXT:ZUNE = HA011, CellIndex = 144 /CAI:452 - 01-32201-47001 / CAI:45201F7dc9b79a'
    ' BIDIE01H / TXT:ZUNE = HA111, CellIndex = 124 /CAI:452 - 01-32201-471 / CAI:45201F7dc9b79b'


    and I'm writing a SQL results:

    CAI
    ---------
    452 01-32201-47001
    452 01-32201-471

    Any idea to do? I tried around with SUBSTR and INSTR functions but not yet sucessed.

    Thank you
    Alex

    something like:

    with my_tab as (select 'BIDIE01H/TXT:ZUNE=HA011, CellIndex=144 /CAI:452-01-32201-47001/CAI:45201F7dc9b79a' col1 from dual union all
                    select 'BIDIE01H/TXT:ZUNE=HA111, CellIndex=124 /CAI:452-01-32201-471/CAI:45201F7dc9b79b' col1 from dual)
    -- end of mimicking your data: USE SQL below:
    select substr(col1, instr(col1, '/CAI:', 1) + 5, instr(col1, '/CAI:', 1, 2) - instr(col1, '/CAI:', 1) - 5 ) CAI
    from my_tab
    
    CAI
    --------------------------------------------------------------------------------
    452-01-32201-47001
    452-01-32201-471     
    
  • data of cutting using substring and instring, and storage in a new table

    Hi all

    I have an emp_address 2tables, address as below:
    ---------------------------------------------------------------
    create the table emp_address (emp_id varchar2 (10), address varchar2 (100));

    Insert into EMP_ADDRESS
    (EMP_ID, ADDRESS)
    Values
    ('101', 'street1 fremont CA 94538');
    Insert into EMP_ADDRESS
    (EMP_ID, ADDRESS)
    Values
    ("102", "Street.2 fremont, CA 94537');
    COMMIT;


    create the address table (emp_id varchar2 (10), street varchar2 (20), city varchar2 (15), State varchar2 (10), zip varchar2 (10));

    -----------------------------------------------------------------------------
    Emp_address data as below:

    emp_id address

    street1 101 fremont CA 94538

    102 fremont, CA 94537 Street.2

    ------------------------------------------------------------------------------
    now I read data emp_address and split the data of the address column and record these data in the address table like as below

    emp_id Street City State Zip Code
    street1 101 fremont, ca 94538
    102 fremont, ca 94537 Street.2

    -------------------------------------------------------------------


    I'm trying to divide these data using substring and instring. Actually my problem was between the data a few times I have 1tab or 2tabs and sometimes 3tab. If the number of tab spaces is not constant.

    So can u help me in this case.

    Thanks in adavnce

    position of reference BluShadow

    WITH emp_address AS (SELECT   '101' emp_id,
                                  'street1 fremont CA 94538' address
                         FROM     DUAL
                         UNION ALL
                         SELECT   '102',
                                  'street2  fremont CA 94537'
                         FROM     DUAL),
        emp_address_list_temp AS
          (SELECT       emp_id,
                        SUBSTR (
                          address,
                          DECODE (LEVEL,
                                  1, 1,
                                  INSTR (address, ' ', 1, LEVEL - 1) + 1
                                 ),
                          DECODE (
                            INSTR (address, ' ', 1, LEVEL),
                            0,
                            LENGTH (address),
                            INSTR (address, ' ', 1, LEVEL)
                            - DECODE (LEVEL,
                                      1, 0,
                                      INSTR (address, ' ', 1, LEVEL - 1)
                                     )
                            - 1
                          )
                        )
                          address,
                        LEVEL rn
           FROM         emp_address
           CONNECT BY   LEVEL <=
                          LENGTH (address) - LENGTH (REPLACE (address, ' ')) + 1
           GROUP BY     emp_id, address, LEVEL),
        emp_address_list AS
          (SELECT   emp_id,
                    address,
                    ROW_NUMBER () OVER (PARTITION BY emp_id ORDER BY rn) rn
           FROM     emp_address_list_temp
           WHERE    TRIM (address) IS NOT NULL)
    SELECT     emp_id,
               (SELECT   address
                FROM     emp_address_list e2
                WHERE    e2.emp_id = e1.emp_id
                     AND rn = 1)
                 street,
               (SELECT   address
                FROM     emp_address_list e2
                WHERE    e2.emp_id = e1.emp_id
                     AND rn = 2)
                 city,
               (SELECT   address
                FROM     emp_address_list e2
                WHERE    e2.emp_id = e1.emp_id
                     AND rn = 3)
                 state,
               (SELECT   address
                FROM     emp_address_list e2
                WHERE    e2.emp_id = e1.emp_id
                     AND rn = 4)
                 zip
    FROM       emp_address_list e1
    GROUP BY   emp_id
    
  • Substr and InStr

    Hi all

    I have a table where a column has a data character in the format below:

    * '00003434' *.
    * '00123' *.
    * '0000045' *.

    If I want to eliminate all zeros on the left, how can I do using substr and instr? or is there an easier way?

    Thank you

    KK

    Try again with

    Select ltrim ('00003434 ', ' 0') of double;

  • Problem with IMovie and Quick time

    Hey everybody,

    I am faced with an unexpected problem with Quicktime and I Movie, and I was wondering if someone had already known that:

    I want to create a film based on shots from my personal camera. I started to work with IMovie to create a sequence of opening and added his musical band. I exported the scenes in Quick Time format without any problem. However, when I merge the exported sequence of I film with shots of my video camera, the soundtrack is completely eliminated.

    I checked on the Internet and saw that there might be a problem of "Codecs". To avoid this, I exported the sequence IMovie with Codecs of same as one of my video camera files.

    Now, if I compare the files exported from I Movie and those of my video camera, they have identical characteristics. However, the soundtrack will always disappear when I merge them.

    Could someone please help me solve this problem?

    Thank you very much in advance.

    Concerning

    Could someone please help me solve this problem?

    Not only based on what you already said.

    I want to create a film based on shots from my personal camera. I started to work with IMovie to create a sequence of opening and added his musical band. I exported the scenes in Quick Time format without any problem. However, when I merge the exported sequence of I film with shots of my video camera, the soundtrack is completely eliminated.

    How would you"merge" files? (I.e. a "QuickTime" format is any form of data compatible with the platform of supply and the specific structure of QT incorporated into real employment that is stored in a container of MOV file on any of up to 99 tracks possible). Also, what app do you use for reading the file 'merged '? (For example, some media players ignore secondary audio tracks as a result of some methods of 'fusion' of files so it is important to know how the files are "merged," whether or not the audio data are "scattered" several tracks, and/or if the Media Player supports playback of multiple, sequential audio popular.)

    I checked on the Internet and saw that there might be a problem of "Codecs". To avoid this, I exported the sequence IMovie with Codecs of same as one of my video camera files.

    The specific codecs and settings using the specific version of iMovie? (The current Mac OS X operating systems have two X QT and 'classic' Qt integrated structure so it is important to know what structure is used here and how).

    Now, if I compare the files exported from I Movie and those of my video camera, they have identical characteristics. However, the soundtrack will always disappear when I merge them.

    As a general rule, you should review the file "merged" to determine why it does not play back correctly rather than comparing the characteristics of the source being merged files. The main problem here seems to be in your project workflow. That is, you seem to be when you perform an operation in two steps rather than edit several iMove multimedia files and then export the combined results in a video the video and audio tracks have been flattened and exported in standard compression formats with unified settings, features and the.

  • problem with Safari and the opening of sites

    problem with Safari and the opening of sites

    Please describe the problem in more detail?

    Try to reset the settings of Safari:

    1. open Safari

    2. click on the Safari menu at the top (to the right of the Apple logo)

    3. Select the Preferences/Privacy tab

    4. click on remove all data from the Web site

    5. close Safari.

    Remove cache Safari files:

    1. click on finder

    2. look for the menu GO to top

    3. click on GO and hold down the option key. This will show a user library folder.

    4. click library and find the Caches folder

    5. in the folder caches com.apple.Safari Ouvrezledossier

    6. move the Cache.db file Trash.

    This should solve the problem. If it does not help, try to disable the Safari extensions

    1. open Safari

    2. click on the Safari menu at the top (to the right of the Apple logo)

    3. Select Preferences

    4. find the Extensions tab

    5 disable all extensions of

    6. relaunch Safari

  • Is anyone able to run Adobe CS5 with El Capitan now? I've read about problems with Illustrator and photoshop, but these seem to be in 2015 Octobe5. She improved at all? I need to upgrade that I am running an old OS v but I need to run CS5.

    I've read about problems with Illustrator and photoshop on EL Capitan, but these seem to be in October 2015. She improved at all? I need to upgrade that I am running an old OS v but I need to run CS5. Can not afford to go to CC. I have a Macbook Pro.

    CS5 and 10.11 are not supported and will never be supported by Adobe or Apple.

    However it works for some, more actually, but not all. There are sporadic problems with Illustrator, Photoshop seems to be the best. Do not expect an improvement and keep in mind that anyone from Adobe, Apple or anywhere else will fix it.

    Do a clean install

    Make sure you have the Apple Java

    h ttps://support.Apple.com/kb/DL1572?locale=en_US

    Make sure you have your serial number and if you are having problems with the serial number or the serialization however adobe of web server will not support your problem.

    update the application via photoshop.

  • problem with java and pogo games

    I use mozilla, and now with the problems with java and hackers cannot play my pogo, what can I do? I disabled my java I tried java 6 does not work or is not safe, what is a safe way to play games on pogo using java?

    Pogo.com is determined as a website SAFE to use Java with Mozilla Firefox?

  • I'm having a lot of problems with firefox and cannot figure out how to get help. It all started when I updated to 13. I get all kinds of advertising popups, I can't play a

    I'm having a lot of problems with firefox and cannot figure out how to get help. It all started when I updated to 13. I get all kinds of advertising popups, I can't play a game on FaceBook called Farm Town at all, and I get a popup of AVG on the cookies that I can't get rid of. These issues are causing me to use Chrome quite often, although I like Fox better. I've searched and searched how to get help and find nothing. How can I get personalized technical help? These problems will not occur in Chrome at all. Thank you.

    Do a check with some malware malware, analysis of programs on the Windows computer.

    You need to scan with all programs, because each program detects a different malicious program.

    Make sure that you update each program to get the latest version of their databases before scanning.

    Alternatively, you can write a check for an infection rootkit TDSSKiller.

    See also:

  • Problem with youtube and other video sites

    I have a problem with youtube and other video sites:

    Everything is up-to-date (flash, FF, my plug ins.) but I get crashes when loading the video. I can hear the sound but I see only the first frame of the video.

    I've reinstalled flash/firefox or tried updating them again for about 4 times now and my cookies/cache has also been errased which i usually don't do. If i enter FF's safe mode it also freezes.
    

    I hope someone can help, I looked for answers on google before and I tried everything I saw, but it did not help.

    GRTS,
    agrash

    I had the same problem, I uninstalled the plugin Flash player (Adobe Flash Player 11.0.1 152) and the problem is solved. I installed the plug-in again and the problem came back. So right now I have no flas Player liked-in, but I don't have too much problem. I hope that I will not find another problem, but it seems that everything is OK.

  • Pavilion Notebook PC 15-079er: problems with sleep and shutdown 15-n079er HP Pavilion Notebook PC.

    Hello world

    I have a huge problem with my Pavilion. I used Windows 8.1 earlier, and I decided to upgrade to Windows 10. I did not like something (can't remember what) and decided to return to Windows 8.1. Almost a year passed, I am again on Windows 10. But if I SLEEP my computer:

    • Screen goes black, everything seems normal.
    • No matter how long wait, fan keeps spinning and power LED, LED Wi - Fi on.
    • Keyboard input does not help. Does not meet what it is.
    • The only thing left to do - stop hard.

    And if I shut down the operating system:

    • Windows normally stops, close all applications, screen goes black.
    • Fan on, led on.

    I did not notice these problems with restarting and the hibernation.

    Two things I've done in this gap of the year:

    • Replacement screen. An old broke. Thanks to my cat...
    • Formatted the drive. I don't think it would do anything diffirent.

    So, any help would be appreciated.

    Thanks in advance,

    Kebab

    Hello

    On some machines, the pilot for 11 series IMEI has been known to cause that kind of question of the judgment, so it may be worth trying an earlier version.

    You can use the following method to install an earlier version of the driver IMEI.

    Download driver IMEI on the link below and save it in your downloads folder.

    http://ftp.HP.com/pub/SoftPaq/sp66001-66500/sp66228.exe

    Disable your wireless card (should be f12 ).

    Open your download folder and run the installer - it warns you that it is an earlier version, but simply continue.

    When finished, restart the laptop.

    If the computer shuts down correctly, turn on your wireless adapter and use the utility on the following link to prevent Windows 10 to update automatically the driver IMEI again.

    https://support.Microsoft.com/en-GB/KB/3073930

    Kind regards

    DP - K

  • Compatibility problem with Vista and iTunes

    I downloaded iTunes 9 on my Tobisha laptop Satellite last night and put about 2.5 GB of music on it. I didn't upload the music from the internet. I used MP3s, I had for a few years.

    When I went to boot up the laptop this morning the loading process took some time, but it never loaded to the login screen. I just see the bottom of MicroSoft. Is there a compatibility problem with Vista and iTunes? Maybe I put too much music on my laptop?

    Boot in safe mode and delete iTunes and all the music I downloaded would solve the problem? Or it is less simple than that?

    Don't know where to direct this question if any help you could provide would be greatly appreciated.

    Thank you.

    Hello

    iTunes is compatible with Vista and there should not be any problem.
    Yesterday, I installed iTunes 9 on my U400 and everything happened correctly.
    If your laptop can not boot Vista correctly, then you should try the repair feature.

    Turn on the computer and press F8. Now you will see the advanced boot menu.
    Now, you have many choices.

    As a first step, you should try the option called: last good known Configuration (Advanced)

    If this will not help and the Vista will not start then try the option called repair your computer. This option displays a list of system recovery tools, you can use to repair startup problems, run diagnostics, or restore your system.

    If that does not help, then you will need to retrieve the unit using the Toshiba recovery disc or HARD drive recovery.

Maybe you are looking for